Просмотр исходного кода

Merge remote-tracking branch 'origin/20201109_pc_vue_new_branch' into 20201109_pc_vue_new_branch

XMLWAN 3 лет назад
Родитель
Сommit
a863e613bb
100 измененных файлов: 11509 добавлений и 3515 удалений
  1. 2 2
      config/dev.env.js
  2. 3 3
      config/index.js
  3. 0 1
      config/prod.env.js
  4. 1 1
      src/api/advice.js
  5. 17 6
      src/api/config.js
  6. 16 0
      src/api/data.js
  7. 186 46
      src/api/drug/drug_stock.js
  8. 105 0
      src/api/his/his.js
  9. 82 0
      src/api/his/his_config.js
  10. 131 65
      src/api/patient.js
  11. 9 9
      src/api/project/project.js
  12. 229 38
      src/api/stock.js
  13. Двоичные данные
      src/assets/img/bailinBottom.jpg
  14. Двоичные данные
      src/assets/img/bailinTop.jpg
  15. 75 64
      src/lang/zh.js
  16. 23 15
      src/router/index_路由未分离前.js
  17. 24 0
      src/router/modules/dialysis.js
  18. 158 27
      src/router/modules/drugs.js
  19. 18 0
      src/router/modules/outpatientDoctorStation.js
  20. 25 3
      src/router/modules/patient.js
  21. 34 34
      src/router/modules/selfPreparedMedicine.js
  22. 78 15
      src/router/modules/stock.js
  23. 58 43
      src/store/modules/globalConfig.js
  24. 3 0
      src/views/layout/Layout.vue
  25. 55 5
      src/xt_pages/data/basicConfig.vue
  26. 46 2
      src/xt_pages/data/components/addConsumable.vue
  27. 418 137
      src/xt_pages/data/components/addDrugs.vue
  28. 298 226
      src/xt_pages/data/components/addInspection.vue
  29. 43 48
      src/xt_pages/data/components/consumables.vue
  30. 188 152
      src/xt_pages/data/components/drugs.vue
  31. 331 260
      src/xt_pages/data/components/editInspection.vue
  32. 1 1
      src/xt_pages/data/components/inspection.vue
  33. 8 9
      src/xt_pages/data/components/project.vue
  34. 1 0
      src/xt_pages/data/components/templateTable.vue
  35. 35 16
      src/xt_pages/data/druguseTemplate.vue
  36. 10 10
      src/xt_pages/data/specialDictionary.vue
  37. 3 1
      src/xt_pages/data/template.vue
  38. 9 1
      src/xt_pages/dialysis/batch_print/batch_print_order.vue
  39. 2010 0
      src/xt_pages/dialysis/batch_print/batch_print_order_forty.vue
  40. 1524 0
      src/xt_pages/dialysis/batch_print/batch_print_order_thirtySeven.vue
  41. 24 0
      src/xt_pages/dialysis/bloodPresssWatch.vue
  42. 51 33
      src/xt_pages/dialysis/details/DialysisPrescription.vue
  43. 6 1
      src/xt_pages/dialysis/details/NavIgation.vue
  44. 5 1
      src/xt_pages/dialysis/details/assessmentAfter.vue
  45. 30 2
      src/xt_pages/dialysis/details/dialog/AssessmentAfterDislysis.vue
  46. 41 55
      src/xt_pages/dialysis/details/dialog/DoctorAdviceDialog.vue
  47. 21 7
      src/xt_pages/dialysis/details/dialog/adviceDialog/AddGroupAdvice.vue
  48. 1 1
      src/xt_pages/dialysis/details/dialog/assessmentBeforeDislysisDialog.vue
  49. 1173 1017
      src/xt_pages/dialysis/details/dialog/dialysisPrescriptionDialog.vue
  50. 8 6
      src/xt_pages/dialysis/details/dialog/monitor_dialog.vue
  51. 4 4
      src/xt_pages/dialysis/details/dialysisMonitoring.vue
  52. 49 4
      src/xt_pages/dialysis/dialysisDoctorAdvice.vue
  53. 24 0
      src/xt_pages/dialysis/dialysisPrintOrder.vue
  54. 37 0
      src/xt_pages/dialysis/doctorAdvicePrint.vue
  55. 63 63
      src/xt_pages/dialysis/template/DialysisPrintOrderForty.vue
  56. 1719 0
      src/xt_pages/dialysis/template/DialysisPrintOrderFortyOne.vue
  57. 1 1
      src/xt_pages/dialysis/template/DialysisPrintOrderSeventeen.vue
  58. 4 2
      src/xt_pages/dialysis/template/DialysisPrintOrderSix.vue
  59. 2 0
      src/xt_pages/dialysis/template/DialysisPrintOrderTen.vue
  60. 2 2
      src/xt_pages/dialysis/template/DialysisPrintOrderThirteen.vue
  61. 45 39
      src/xt_pages/dialysis/template/DialysisPrintOrderThirtyEight.vue
  62. 18 10
      src/xt_pages/dialysis/template/DialysisPrintOrderThirtyFive.vue
  63. 1 1
      src/xt_pages/dialysis/template/DialysisPrintOrderThirtyNine.vue
  64. 1 1
      src/xt_pages/dialysis/template/DialysisPrintOrderThirtyOne.vue
  65. 177 0
      src/xt_pages/dialysis/template/DialysisPrintOrderTwentyFour.vue
  66. 1 1
      src/xt_pages/dialysis/template/DialysisPrintOrderTwentyNine.vue
  67. 7 0
      src/xt_pages/dialysis/template/DialysisPrintOrderTwentySeven.vue
  68. 14 9
      src/xt_pages/hospitalStation/allListPrint.vue
  69. 1 1
      src/xt_pages/hospitalStation/components/ChargePrescriptionTable.vue
  70. 52 33
      src/xt_pages/hospitalStation/components/callPrescription.vue
  71. 193 52
      src/xt_pages/hospitalStation/components/deskPrescription.vue
  72. 1 1
      src/xt_pages/hospitalStation/components/deskRecord.vue
  73. 20 1
      src/xt_pages/hospitalStation/components/inquiriesDetail.vue
  74. 1 1
      src/xt_pages/hospitalStation/components/newPrescriptionTable.vue
  75. 43 24
      src/xt_pages/hospitalStation/components/nextOrLastPrescription.vue
  76. 13 12
      src/xt_pages/hospitalStation/components/prescriptionTable.vue
  77. 11 8
      src/xt_pages/hospitalStation/components/registerDialog.vue
  78. 18 16
      src/xt_pages/hospitalStation/components/registerDialog9504.vue
  79. 125 17
      src/xt_pages/hospitalStation/doctorDesk.vue
  80. 7 7
      src/xt_pages/hospitalStation/index.vue
  81. 26 16
      src/xt_pages/hospitalStation/listPrint.vue
  82. 7 1
      src/xt_pages/hospitalStation/newStatementPrint.vue
  83. 2 2
      src/xt_pages/hospitalStation/newStatementPrintTwo.vue
  84. 65 22
      src/xt_pages/hospitalStation/outpatientChargesManagement.vue
  85. 9 4
      src/xt_pages/hospitalStation/summary.vue
  86. 294 284
      src/xt_pages/hospitalStation/summaryDetail.vue
  87. 3 3
      src/xt_pages/hospitalStation/treatTemplate/printOne.vue
  88. 1 3
      src/xt_pages/management/components/QualityForm.vue
  89. 7 2
      src/xt_pages/outpatientCharges/allListPrint.vue
  90. 13 6
      src/xt_pages/outpatientCharges/components/chargeDialog.vue
  91. 1 1
      src/xt_pages/outpatientCharges/components/chargeMonthPrescriptionTable.vue
  92. 24 14
      src/xt_pages/outpatientCharges/components/monthPrescriptionTable.vue
  93. 7 31
      src/xt_pages/outpatientCharges/components/prescriptionTable.vue
  94. 327 328
      src/xt_pages/outpatientCharges/components/registerDialog.vue
  95. 62 22
      src/xt_pages/outpatientCharges/components/registerDialog9504.vue
  96. 190 39
      src/xt_pages/outpatientCharges/costComparison.vue
  97. 188 57
      src/xt_pages/outpatientCharges/incomeStatistics.vue
  98. 9 6
      src/xt_pages/outpatientCharges/invoicePrint.vue
  99. 3 1
      src/xt_pages/outpatientCharges/invoiceTemplate/printOne.vue
  100. 0 0
      src/xt_pages/outpatientCharges/invoiceTemplate/printThree.vue

+ 2 - 2
config/dev.env.js Просмотреть файл

@@ -7,8 +7,8 @@ module.exports = {
7 7
   NODE_ENV: '"development"',
8 8
   ENV_CONFIG: '"dev"',
9 9
   // BASE_API: '"http://new_mobile.xt.api.sgjyun.com"', // //http://api.xt.test.sgjyun.com http://112.74.16.180:9527,////'"http://localhost:9529"',
10
-  BASE_API: '"http://api.xt.test.sgjyun.com"',
11
-  // BASE_API: '"http://localhost:9531"',
10
+  // BASE_API: '"http://api.xt.test.sgjyun.com"',
11
+  BASE_API: '"http://localhost:9529"',
12 12
   SSO_HOST: '"http://testsso.sgjyun.com"',
13 13
   SRCM_HOST: '"http://test1.sgjyun.com"',
14 14
   XT_HOST: '"http://xt.test.sgjyun.com"',

+ 3 - 3
config/index.js Просмотреть файл

@@ -27,10 +27,10 @@ module.exports = {
27 27
     // can be overwritten by process.env.HOST
28 28
     // if you want dev by ip, please set host: '0.0.0.0'
29 29
 
30
-     // host: 'xt.test.sgjyun.com',
30
+    // host: 'xt.test.sgjyun.com',
31 31
     //  host: 'xt.kuyicloud.com',
32
-    host: 'xt.test.sgjyun.com',
33
-    // host: 'localhost',
32
+    // host: 'xt.test.sgjyun.com',
33
+   host: 'localhost',
34 34
     port: 9528, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined
35 35
     autoOpenBrowser: true,
36 36
     errorOverlay: true,

+ 0 - 1
config/prod.env.js Просмотреть файл

@@ -9,4 +9,3 @@ module.exports = {
9 9
   MIRCO_MALL_HOST: '"http://mall.kuyicloud.com"',
10 10
   CDM_HOST: '"http://cdm.kuyicloud.com"',
11 11
 }
12
-

+ 1 - 1
src/api/advice.js Просмотреть файл

@@ -52,7 +52,7 @@ export function ExecDoctorAdvice(patient, id, time, mode,origin) {
52 52
     mode: mode,
53 53
     origin:origin,
54 54
   };
55
-  console.log("paras------",params)
55
+ 
56 56
   return request({
57 57
     url: "/api/patients/advice/exec",
58 58
     method: "Post",

+ 17 - 6
src/api/config.js Просмотреть файл

@@ -148,7 +148,7 @@ export function postMonitorIsOpen(params){
148 148
 
149 149
 
150 150
 export function getMonitorConfig(params){
151
-  
151
+
152 152
   return request({
153 153
     url:"/api/monitor/getmonitorconfig",
154 154
     method:"Get",
@@ -158,7 +158,7 @@ export function getMonitorConfig(params){
158 158
 
159 159
 
160 160
 export function addOrderConfig(params){
161
-  
161
+
162 162
   return request({
163 163
     url:"/api/order/addorderconfig",
164 164
     method:"Get",
@@ -168,7 +168,7 @@ export function addOrderConfig(params){
168 168
 }
169 169
 
170 170
 export function getOrderConfig(params){
171
-  
171
+
172 172
   return request({
173 173
     url:"/api/order/getorderconfig",
174 174
     method:"get",
@@ -177,7 +177,7 @@ export function getOrderConfig(params){
177 177
 }
178 178
 
179 179
 export function changeFuncPrint(params){
180
-  
180
+
181 181
   return request({
182 182
     url:"/api/order/changefuncprint",
183 183
     method:"get",
@@ -186,10 +186,21 @@ export function changeFuncPrint(params){
186 186
 }
187 187
 
188 188
 export function getDataPrintList(params){
189
-  
189
+
190 190
   return request({
191 191
     url:"/api/order/getdataprint",
192 192
     method:"get",
193 193
     params:params
194 194
   })
195
-}
195
+}
196
+
197
+
198
+
199
+export function postXtHisProjectIsOpen(params){
200
+
201
+  return request({
202
+    url:"/api/xtconfigproject/isopen",
203
+    method:"post",
204
+    params:params
205
+  })
206
+}

+ 16 - 0
src/api/data.js Просмотреть файл

@@ -304,7 +304,23 @@ export function GetDiagnose(params) {
304 304
   })
305 305
 }
306 306
 
307
+export function getAllDrugList(params){
308
+  
309
+  return request({
310
+    url:"/api/drug/getalldruglist",
311
+    method:"Get",
312
+    params:params
313
+  })
314
+}
307 315
 
316
+export function postSearchDrugList(keyword,params){
317
+  
318
+  return request({
319
+    url:"/api/drug/postsearchdruglist?keyword="+keyword,
320
+    method:"get",
321
+    params:params
322
+  })
323
+}
308 324
 
309 325
 
310 326
 

+ 186 - 46
src/api/drug/drug_stock.js Просмотреть файл

@@ -1,7 +1,6 @@
1 1
 import request from '@/utils/request'
2 2
 
3 3
 export function postDrugWarehouse(params, warehousing_time, manufacturer_id, dealer_id, type) {
4
-
5 4
   return request({
6 5
     url: '/api/drugwarehouse/create?warehousing_time=' + warehousing_time + '&manufacturer_id=' + manufacturer_id + '&dealer_id=' + dealer_id + '&type=' + type,
7 6
     method: 'post',
@@ -186,9 +185,9 @@ export function DeleteDrugWarehouseInfoItem(params) {
186 185
   })
187 186
 }
188 187
 
189
-export function EditDrugWarehouse(params, warehousing_time, id,type,manufacturer_id,dealer_id) {
188
+export function EditDrugWarehouse(params, warehousing_time, id, type, manufacturer_id, dealer_id) {
190 189
   return request({
191
-    url: '/api/drugwarehouse/edit?warehousing_time=' + warehousing_time + '&id=' + id+"&type="+type+"&manufacturer_id="+manufacturer_id+"&dealer_id="+dealer_id,
190
+    url: '/api/drugwarehouse/edit?warehousing_time=' + warehousing_time + '&id=' + id + '&type=' + type + '&manufacturer_id=' + manufacturer_id + '&dealer_id=' + dealer_id,
192 191
     method: 'post',
193 192
     data: params
194 193
   })
@@ -234,9 +233,9 @@ export function deleteDrugSalesReturnInfo(params) {
234 233
   })
235 234
 }
236 235
 
237
-export function editDrugSalesReturnInfo(params, return_time, id,type,manufacturer_id,dealer_id) {
236
+export function editDrugSalesReturnInfo(params, return_time, id, type, manufacturer_id, dealer_id) {
238 237
   return request({
239
-    url: '/api/drugsalesreturn/edit?return_time=' + return_time + '&id=' + id+"&type="+type+"&manufacturer_id="+manufacturer_id+"&dealer_id="+dealer_id,
238
+    url: '/api/drugsalesreturn/edit?return_time=' + return_time + '&id=' + id + '&type=' + type + '&manufacturer_id=' + manufacturer_id + '&dealer_id=' + dealer_id,
240 239
     method: 'post',
241 240
     data: params
242 241
   })
@@ -274,9 +273,9 @@ export function getDrugWarehouseOutInfo(params) {
274 273
   })
275 274
 }
276 275
 
277
-export function editDrugWarehouseoutInfo(params, warehouse_out_time, id,type,manufacturer_id,dealer_id) {
276
+export function editDrugWarehouseoutInfo(params, warehouse_out_time, id, type, manufacturer_id, dealer_id) {
278 277
   return request({
279
-    url: '/api/drugwarehouseout/edit?warehouse_out_time=' + warehouse_out_time + '&id=' + id+"&type="+type+"&manufacturer_id="+manufacturer_id+"&dealer_id="+dealer_id,
278
+    url: '/api/drugwarehouseout/edit?warehouse_out_time=' + warehouse_out_time + '&id=' + id + '&type=' + type + '&manufacturer_id=' + manufacturer_id + '&dealer_id=' + dealer_id,
280 279
     method: 'post',
281 280
     data: params
282 281
   })
@@ -290,9 +289,9 @@ export function getDrugCancelStockList(params) {
290 289
   })
291 290
 }
292 291
 
293
-export function editDrugCancelStockInfo(params, cancel_stock_time, id,type,manufacturer_id,dealer_id) {
292
+export function editDrugCancelStockInfo(params, cancel_stock_time, id, type, manufacturer_id, dealer_id) {
294 293
   return request({
295
-    url: '/api/drugcancelstockinfo/edit?cancel_time=' + cancel_stock_time + '&id=' + id+"&type="+type+"&manufacturer_id="+manufacturer_id+"&dealer_id=" + dealer_id,
294
+    url: '/api/drugcancelstockinfo/edit?cancel_time=' + cancel_stock_time + '&id=' + id + '&type=' + type + '&manufacturer_id=' + manufacturer_id + '&dealer_id=' + dealer_id,
296 295
     method: 'post',
297 296
     data: params
298 297
   })
@@ -345,8 +344,6 @@ export function getStockDetail(params) {
345 344
   })
346 345
 }
347 346
 
348
-
349
-
350 347
 export function getPrintStockGood(params) {
351 348
   return request({
352 349
     url: '/api/print/stock',
@@ -355,8 +352,6 @@ export function getPrintStockGood(params) {
355 352
   })
356 353
 }
357 354
 
358
-
359
-
360 355
 export function getDrugWarehouseOutUser(params) {
361 356
   return request({
362 357
     url: '/api/drugwarehouseout/user',
@@ -365,79 +360,224 @@ export function getDrugWarehouseOutUser(params) {
365 360
   })
366 361
 }
367 362
 
368
-
369 363
 export function createDrugStockAutomaticReduceConfig(is_open) {
370 364
   return request({
371
-    url: '/api/drugstock/automaticreduce/isopen?is_open='+is_open,
372
-    method: 'post',
365
+    url: '/api/drugstock/automaticreduce/isopen?is_open=' + is_open,
366
+    method: 'post'
373 367
   })
374 368
 }
375 369
 
376 370
 export function getDrugStockAutomaticReduceConfig() {
377 371
   return request({
378 372
     url: '/api/drugstockautomaticreduce/get',
373
+    method: 'get'
374
+  })
375
+}
376
+
377
+export function getDrugIndetail(params) {
378
+  return request({
379
+    url: '/api/drugstock/getdrugindetail',
380
+    method: 'Get',
381
+    params: params
382
+  })
383
+}
384
+
385
+export function getDrugCancelOrder(params) {
386
+  return request({
387
+    url: '/api/drugstock/getdrugcancelorder',
379 388
     method: 'get',
389
+    params: params
380 390
   })
381 391
 }
382 392
 
393
+export function getDrugOutDetail(params) {
394
+  return request({
395
+    url: '/api/drugstock/getdrugoutdetail',
396
+    method: 'get',
397
+    params: params
398
+  })
399
+}
383 400
 
384
-export function getDrugIndetail(params){
401
+export function getDrugCancelDetail(params) {
385 402
   return request({
386
-    url:"/api/drugstock/getdrugindetail",
387
-    method:"Get",
388
-    params:params
403
+    url: '/api/drugstock/getdrugcanceldetail',
404
+    method: 'Get',
405
+    params: params
389 406
   })
390 407
 }
391 408
 
409
+export function getDrugAutoMaticList(params) {
410
+  return request({
411
+    url: '/api/drugstock/getdrugautomaticlist',
412
+    method: 'Get',
413
+    params: params
414
+  })
415
+}
392 416
 
393
-export function getDrugCancelOrder(params){
394
-  
395
-   return request({
396
-     url:"/api/drugstock/getdrugcancelorder",
397
-     method:"get",
398
-     params:params
399
-   })
417
+export function getDrugWarehouseOrderInfo(params) {
418
+  return request({
419
+    url: '/api/drugstock/getdrugwarehouseorderinfo',
420
+    method: 'get',
421
+    params: params
422
+  })
400 423
 }
401 424
 
402
-export function getDrugOutDetail(params){
403
-  
425
+export function getDrugStockList(params) {
404 426
   return request({
405
-    url:"/api/drugstock/getdrugoutdetail",
406
-    method:"get",
407
-    params:params
427
+    url: '/api/drugstock/drugstocklist',
428
+    method: 'get',
429
+    params: params
408 430
   })
409 431
 }
410 432
 
411
-export function getDrugCancelDetail(params){
433
+export function getDrugStockFlow(params) {
434
+  return request({
435
+    url: '/api/drugstock/getdrugstockflow',
436
+    method: 'Get',
437
+    params: params
438
+  })
439
+}
412 440
 
441
+export function getOutDrugStockFlow(params) {
413 442
   return request({
414
-    url:"/api/drugstock/getdrugcanceldetail",
415
-    method:"Get",
416
-    params:params
443
+    url: '/api/drugoutstock/getoutdrugstockflow',
444
+    method: 'get',
445
+    params: params
417 446
   })
418 447
 }
419 448
 
449
+export function getBatchOrderDetail(params) {
450
+  return request({
451
+    url: '/api/drug/getbatchorderdetail',
452
+    method: 'get',
453
+    params: params
454
+  })
455
+}
420 456
 
421
-export function getDrugAutoMaticList(params){
422
-  
457
+export function getStockInList(params) {
423 458
   return request({
424
-    url:"/api/drugstock/getdrugautomaticlist",
425
-    method:"Get",
426
-    params:params,
459
+    url: '/api/stock/getstocklistbyid',
460
+    method: 'Get',
461
+    params: params
427 462
   })
428 463
 }
429 464
 
465
+export function getStockOutList(params) {
466
+  return request({
467
+    url: '/api/stock/getstockoutlist',
468
+    method: 'get',
469
+    params: params
470
+  })
471
+}
430 472
 
431
-export function getDrugWarehouseOrderInfo(params){
432
-   
473
+export function getDrugCountList(params) {
433 474
   return request({
434
-    url:"/api/drugstock/getdrugwarehouseorderinfo",
435
-    method:"get",
436
-    params:params
475
+    url: '/api/drug/getdrugcountlist',
476
+    method: 'get',
477
+    params: params
437 478
   })
438 479
 }
439 480
 
481
+export function getSinleOrderDetail(params) {
482
+  return request({
483
+    url: '/api/drug/getsingleorderdetail',
484
+    method: 'get',
485
+    params: params
486
+  })
487
+}
440 488
 
489
+export function getAutoDrugDetail(params) {
490
+  return request({
491
+    url: '/api/drug/getautodrugdetial',
492
+    method: 'Get',
493
+    params: params
494
+  })
495
+}
496
+
497
+export function getDrugOrderInPrint(params) {
498
+  return request({
499
+    url: '/api/drug/getdrugorderinprint',
500
+    method: 'get',
501
+    params: params
502
+  })
503
+}
504
+
505
+export function getDrugOutOrderDetailPrint(params) {
506
+  return request({
507
+    url: '/api/drug/getdrugoutorderdetailprint',
508
+    method: 'get',
509
+    params: params
510
+  })
511
+}
512
+
513
+export function getDrugBatchNumber(params) {
514
+  return request({
515
+    url: '/api/drug/getdrugbatchnumber',
516
+    method: 'Get',
517
+    params: params
518
+  })
519
+}
520
+
521
+export function exportDrugList(params) {
522
+  return request({
523
+    url: '/api/drug/exportdruglist',
524
+    method: 'get',
525
+    params: params
526
+  })
527
+}
528
+
529
+export function getExportOutOrderDrugList(params) {
530
+  return request({
531
+    url: '/api/drug/getexportoutorderdruglist',
532
+    method: 'Get',
533
+    params: params
534
+  })
535
+}
536
+
537
+export function getDrugFlow(params) {
538
+  return request({
539
+    url: '/api/drug/getdrugflow',
540
+    method: 'Get',
541
+    params: params
542
+  })
543
+}
544
+
545
+export function getCancelStockDetail(params) {
546
+  return request({
547
+    url: '/api/drug/getcancelstockdetail',
548
+    method: 'get',
549
+    params: params
550
+  })
551
+}
552
+
553
+export function getCancelDrugOrderPrint(params) {
554
+  return request({
555
+    url: '/api/drug/getcanceldrugorderprint',
556
+    method: 'Get',
557
+    params: params
558
+  })
559
+}
441 560
 
561
+export function getDrugCancelExportList(params) {
562
+  return request({
563
+    url: '/api/drug/drugcancelexportlist',
564
+    method: 'get',
565
+    params: params
566
+  })
567
+}
442 568
 
569
+export function getDrugWarehouseInfoPrint(params) {
570
+  return request({
571
+    url: '/api/drug/getdrugwarehouseinfoprint',
572
+    method: 'get',
573
+    params: params
574
+  })
575
+}
443 576
 
577
+export function getDrugOutOrderPrint(params) {
578
+  return request({
579
+    url: '/api/drug/getdrugoutorderprint',
580
+    method: 'get',
581
+    params: params
582
+  })
583
+}

+ 105 - 0
src/api/his/his.js Просмотреть файл

@@ -429,6 +429,111 @@ export function getHisHospitalPrescriptionList (params) {
429 429
 
430 430
 
431 431
 
432
+export function getIncomeStatisticsDataList(params) {
433
+  return request({
434
+    url: "/api/incomestatistics/get",
435
+    method: "get",
436
+    params:params,
437
+  });
438
+}
439
+
440
+
441
+
442
+
443
+
444
+
445
+export function saveTeam(data, params) {
446
+  return request({
447
+    url: "/api/his/saveprojectteam",
448
+    method: "post",
449
+    data:data,
450
+    params:params,
451
+  });
452
+}
453
+
454
+
455
+
456
+
457
+export function editTeam(params,data) {
458
+  return request({
459
+    url: "/api/his/updateprojectteam",
460
+    method: "post",
461
+    data:data,
462
+    params:params,
463
+  });
464
+}
465
+
466
+export function createdTemplate(params,data) {
467
+  return request({
468
+    url: "/api/hisprescriptiontemplate/create",
469
+    method: "post",
470
+    data:data,
471
+    params:params,
472
+  });
473
+}
474
+
475
+export function preSettle(params) {
476
+  return request({
477
+    url: "/api/presettle/get",
478
+    method: "get",
479
+    params:params,
480
+  });
481
+}
482
+
483
+
484
+
485
+export function getPrivateExpenses(params) {
486
+  return request({
487
+    url: "/api/privateexpenses/get",
488
+    method: "get",
489
+    params:params,
490
+  });
491
+}
492
+
493
+export function refundNumber(params) {
494
+  return request({
495
+    url: "/api/refundnumber/post",
496
+    method: "post",
497
+    params:params,
498
+  });
499
+}
500
+
501
+
502
+export function changeMedType(params) {
503
+  return request({
504
+    url: "/api/changemedtype/post",
505
+    method: "post",
506
+    params:params,
507
+  });
508
+}
509
+
510
+
511
+export function refunddetail(params) {
512
+  return request({
513
+    url: "/api/refunddetail/post",
514
+    method: "post",
515
+    params:params,
516
+  });
517
+}
518
+
519
+
520
+
521
+
522
+export function getPrivateExpensesOrder(params) {
523
+  return request({
524
+    url: "/api/privateexpensesorder/get",
525
+    method: "get",
526
+    params:params,
527
+  });
528
+}
529
+
530
+
531
+
532
+
533
+
534
+
535
+
536
+
432 537
 
433 538
 
434 539
 

+ 82 - 0
src/api/his/his_config.js Просмотреть файл

@@ -0,0 +1,82 @@
1
+import request from "@/utils/request";
2
+
3
+
4
+
5
+export function getPatientList(params) {
6
+  return request({
7
+    url: "/api/his/patient/list",
8
+    method: "get",
9
+    params:params
10
+  });
11
+}
12
+
13
+
14
+export function getPrescriptionTemplateList(params) {
15
+  return request({
16
+    url: "/api/his/prescriptiontemplate/list",
17
+    method: "get",
18
+    params:params
19
+  });
20
+}
21
+
22
+
23
+export function getPrescriptionTemplateInfo(params) {
24
+  return request({
25
+    url: "/api/his/prescriptiontemplate/info",
26
+    method: "get",
27
+    params:params
28
+  });
29
+}
30
+
31
+
32
+
33
+export function createdTemplate(params,data) {
34
+  return request({
35
+    url: "/api/his/prescriptiontemplate/create",
36
+    method: "post",
37
+    data:data,
38
+    params:params,
39
+  });
40
+}
41
+
42
+
43
+
44
+
45
+export function delHisPrescriptionTemplate(params) {
46
+  return request({
47
+    url: "/api/his/prescriptiontemplate/delete",
48
+    method: "post",
49
+    params:params,
50
+  });
51
+}
52
+
53
+
54
+
55
+export function delHisPrescriptionInfoTemplate(params) {
56
+  return request({
57
+    url: "/api/his/prescriptioninfotemplate/delete",
58
+    method: "post",
59
+    params:params,
60
+  });
61
+}
62
+
63
+
64
+
65
+
66
+export function delHisPrescriptionAdviceTemplate(params) {
67
+  return request({
68
+    url: "/api/his/advicetemplate/delete",
69
+    method: "post",
70
+    params:params,
71
+  });
72
+}
73
+
74
+
75
+
76
+export function delHisPrescriptionProjectTemplate(params) {
77
+  return request({
78
+    url: "/api/his/projecttemplate/delete",
79
+    method: "post",
80
+    params:params,
81
+  });
82
+}

+ 131 - 65
src/api/patient.js Просмотреть файл

@@ -70,7 +70,6 @@ export function createPatientDialysisSolution(id, solution, mode) {
70 70
 }
71 71
 
72 72
 export function editPatientDialysisSolution(patient, id, solution, mode) {
73
-  
74 73
   return request({
75 74
     url: '/api/patients/dialysissolution/edit?patient=' + patient + '&id=' + id + '&mode=' + mode,
76 75
     method: 'put',
@@ -158,18 +157,17 @@ export function getCourseOfDiseaseRecords(patient_id, start_time_ymd, end_time_y
158 157
 }
159 158
 
160 159
 export function createCourseOfDiseaseRecord(patient_id, content, record_time, title) {
161
-  
162 160
   var params = {
163 161
     patient_id: patient_id,
164 162
     content: content,
165 163
     record_time: record_time,
166 164
     title: title
167 165
   }
168
-  console.log("params222222",params)
166
+  console.log('params222222', params)
169 167
   return request({
170 168
     url: '/api/patient/course/create',
171
-    method: 'post',
172
-    data: params
169
+    method: 'get',
170
+    params: params
173 171
   })
174 172
 }
175 173
 
@@ -185,8 +183,8 @@ export function modifyCourseOfDiseaseRecord(patient_id, content, record_time, id
185 183
   }
186 184
   return request({
187 185
     url: '/api/patient/course/modify',
188
-    method: 'post',
189
-    data: params
186
+    method: 'get',
187
+    params: params
190 188
   })
191 189
 }
192 190
 
@@ -376,7 +374,6 @@ export function modifyDryWeightData(params) {
376 374
 }
377 375
 
378 376
 export function deleteDryWeight(id, data) {
379
- 
380 377
   return request({
381 378
     url: '/api/patient/deletedryweight?id=' + id,
382 379
     method: 'delete',
@@ -384,102 +381,171 @@ export function deleteDryWeight(id, data) {
384 381
   })
385 382
 }
386 383
 
384
+export function saveVasularAccess(params) {
385
+  return request({
386
+    url: '/api/patient/savevasularaccess',
387
+    method: 'Get',
388
+    params: params
389
+  })
390
+}
387 391
 
388
-export function saveVasularAccess(params){
389
-   
392
+export function getAllVascularAccessList(params) {
390 393
   return request({
391
-    url:"/api/patient/savevasularaccess",
392
-    method:"Get",
393
-    params:params
394
+    url: '/api/patient/getallvascualraccesslist',
395
+    method: 'Get',
396
+    params: params
394 397
   })
395
-} 
398
+}
396 399
 
397
-export function getAllVascularAccessList(params){
398
-  
400
+export function getVascularAccessByDetail(id, params) {
399 401
   return request({
400
-    url:"/api/patient/getallvascualraccesslist",
401
-    method:"Get",
402
-    params:params
402
+    url: '/api/patient/getvascularaccessbydetial?id=' + id,
403
+    method: 'get',
404
+    params: params
405
+  })
406
+}
407
+
408
+export function updatedVasularAccess(params) {
409
+  return request({
410
+    url: '/api/patient/updatevasularaccess',
411
+    method: 'get',
412
+    params: params
403 413
   })
404 414
 }
405 415
 
406
-export function getVascularAccessByDetail(id,params){
407
-  
416
+export function DeleteVascularAccess(id, params) {
408 417
   return request({
409
-    url:"/api/patient/getvascularaccessbydetial?id="+id,
410
-    method:"get",
411
-    params:params,
418
+    url: '/api/patient/deletevascularaccess?id=' + id,
419
+    method: 'get',
420
+    params: params
412 421
   })
413 422
 }
414 423
 
415
-export function updatedVasularAccess(params){
416
-  
424
+export function savePasswayAssessment(params) {
417 425
   return request({
418
-    url:"/api/patient/updatevasularaccess",
419
-    method:"get",
420
-    params:params
426
+    url: '/api/patient/savepasswayassessment',
427
+    method: 'get',
428
+    params: params
421 429
   })
422 430
 }
423 431
 
424
-export function DeleteVascularAccess(id,params){
425
-  
432
+export function getAllPassWayAssessmentList(params) {
426 433
   return request({
427
-    url:"/api/patient/deletevascularaccess?id="+id,
428
-    method:"get",
429
-    params:params
434
+    url: '/api/patient/getallpasswayassessment',
435
+    method: 'get',
436
+    params: params
430 437
   })
431 438
 }
432 439
 
433
-export function savePasswayAssessment(params){
434
-  
440
+export function getPassWayAssessmentById(id, params) {
435 441
   return request({
436
-    url:"/api/patient/savepasswayassessment",
437
-    method:"get",
438
-    params:params
442
+    url: '/api/patient/getpasswayassmentbyid?id=' + id,
443
+    method: 'Get',
444
+    params: params
439 445
   })
440 446
 }
441 447
 
442
-export function getAllPassWayAssessmentList(params){
443
-  
448
+export function updatePasswayAssessment(params) {
444 449
   return request({
445
-    url:"/api/patient/getallpasswayassessment",
446
-    method:"get",
447
-    params:params
450
+    url: '/api/patient/updatepasswayassesment',
451
+    method: 'get',
452
+    params: params
448 453
   })
449 454
 }
450 455
 
451
-export function getPassWayAssessmentById(id,params){
452
-  
456
+export function DeletePassWayAssessMent(id, params) {
453 457
   return request({
454
-    url:"/api/patient/getpasswayassmentbyid?id="+id,
455
-    method:"Get",
456
-    params:params,
458
+    url: '/api/patient/deletepasswayassessment?id=' + id,
459
+    method: 'get',
460
+    params: params
457 461
   })
458 462
 }
459 463
 
460
-export function updatePasswayAssessment(params){
461
-  
464
+export function getAccessList(params) {
462 465
   return request({
463
-    url:"/api/patient/updatepasswayassesment",
464
-    method:"get",
465
-    params:params
466
+    url: '/api/patient/getaccesslist',
467
+    method: 'get',
468
+    params: params
466 469
   })
467 470
 }
468 471
 
469
-export function DeletePassWayAssessMent(id,params){
470
-  
472
+export function getInitDataList(params) {
471 473
   return request({
472
-    url:"/api/patient/deletepasswayassessment?id="+id,
473
-    method:"get",
474
-    params:params
474
+    url: '/api/patient/getinitdatelist',
475
+    method: 'get',
476
+    params: params
475 477
   })
476 478
 }
477 479
 
478
-export function getAccessList(params){
479
-  
480
+export function getInspectionMajorItem(params) {
480 481
   return request({
481
-    url:"/api/patient/getaccesslist",
482
-    method:"get",
483
-    params:params
482
+    url: '/api/patient/getinspectionmajoritem',
483
+    method: 'get',
484
+    params: params
484 485
   })
485
-}
486
+}
487
+
488
+export function getInspectionDetail(params) {
489
+  return request({
490
+    url: '/api/patient/getinspectiondetail',
491
+    method: 'Get',
492
+    params: params
493
+  })
494
+}
495
+
496
+export function getInspectionItemList(params) {
497
+  return request({
498
+    url: '/api/patient/getinspectionitemlist',
499
+    method: 'get',
500
+    params: params
501
+  })
502
+}
503
+
504
+export function saveCreation(params) {
505
+  console.log('中国龚3223呃3额', params)
506
+  return request({
507
+    url: '/api/patient/savecreationinspection',
508
+    method: 'get',
509
+    params: params
510
+  })
511
+}
512
+
513
+export function getTemplateSummaryList(params) {
514
+  return request({
515
+    url: '/api/patient/getemlatesummarylist',
516
+    method: 'Get',
517
+    params: params
518
+  })
519
+}
520
+
521
+export function getTemplateSummaryDetail(params) {
522
+  return request({
523
+    url: '/api/patient/gettemplatesummarydetail',
524
+    method: 'Get',
525
+    params: params
526
+  })
527
+}
528
+
529
+export function getTemplateSummaryPrintDetail(params) {
530
+  return request({
531
+    url: '/api/patient/gettemplatesummaryprintdetail',
532
+    method: 'Get',
533
+    params: params
534
+  })
535
+}
536
+
537
+export function UpdateTemplateSummary(params) {
538
+  return request({
539
+    url: '/api/patient/updatetemplatesummary',
540
+    method: 'get',
541
+    params: params
542
+  })
543
+}
544
+
545
+export function deleteSummary(params) {
546
+  return request({
547
+    url: '/api/patient/deletesummary',
548
+    method: 'Get',
549
+    params: params
550
+  })
551
+}

+ 9 - 9
src/api/project/project.js Просмотреть файл

@@ -1,5 +1,5 @@
1 1
 import request from "@/utils/request";
2
-import url from "postcss-url";
2
+
3 3
 
4 4
 export function saveProject(params){
5 5
 
@@ -47,14 +47,14 @@ export function deleteHisProject(id,params){
47 47
   })
48 48
 }
49 49
 
50
-export function saveProjectTeam(params){
51
-
52
-  return request({
53
-    url:"/api/his/saveprojectteam",
54
-    methods:"Get",
55
-    params:params
56
-  })
57
-}
50
+// export function saveProjectTeam(params,data){
51
+//   return request({
52
+//     url:"/api/his/saveprojectteam",
53
+//     methods:"DELETE",
54
+//     data:data,
55
+//     params:params,
56
+//   })
57
+// }
58 58
 
59 59
 export function getProjectTeamList(params){
60 60
 

+ 229 - 38
src/api/stock.js Просмотреть файл

@@ -121,7 +121,7 @@ export function GetGoodType(params) {
121 121
 }
122 122
 
123 123
 export function createGoodInfo(params) {
124
-  console.log("prams",params)
124
+  console.log('prams', params)
125 125
   return request({
126 126
     url: '/api/stock/good/info/create',
127 127
     method: 'post',
@@ -387,12 +387,6 @@ export function DeleteWarehouseInfoItem(params) {
387 387
 }
388 388
 
389 389
 export function EditWarehouse(params, warehousing_time, id, type, manufacturer_id, dealer_id) {
390
-  console.log("params",params)
391
-  console.log("warehousing",warehousing_time)
392
-  console.log("id",id)
393
-  console.log("type",type)
394
-  console.log("manufacturer_id",manufacturer_id)
395
-  console.log("dealer_id",dealer_id)
396 390
   return request({
397 391
     url: '/api/warehouse/edit?warehousing_time=' + warehousing_time + '&id=' + id + '&type=' + type + '&manufacturer_id=' + manufacturer_id + '&dealer_id=' + dealer_id,
398 392
     method: 'post',
@@ -567,55 +561,252 @@ export function getWarehouseOutUser(params) {
567 561
   })
568 562
 }
569 563
 
564
+export function PostSearchStock(keyword, params) {
565
+  return request({
566
+    url: '/api/warehouseout/postsearchstock?keyword=' + keyword,
567
+    method: 'get',
568
+    params: params
569
+  })
570
+}
571
+
572
+export function GetOutStockTotalCount(params) {
573
+  return request({
574
+    url: '/api/warehouseout/getoutstocktotalcount',
575
+    method: 'get',
576
+    params: params
577
+  })
578
+}
579
+
580
+export function postGoodInformation(params) {
581
+  console.log('PARMAS22', params)
582
+  return request({
583
+    url: '/api/good/postgoodinformation',
584
+    method: 'Post',
585
+    data: params
586
+  })
587
+}
588
+
589
+export function postDrugInformation(params) {
590
+  return request({
591
+    url: '/api/good/postdruginformation',
592
+    method: 'post',
593
+    data: params
594
+  })
595
+}
596
+
597
+export function getInitializtion(params) {
598
+  return request({
599
+    url: '/api/good/initializtion',
600
+    method: 'get',
601
+    params: params
602
+  })
603
+}
570 604
 
571
-export function PostSearchStock(keyword,params){
572
-  
605
+export function getWarehouseOrderInfoList(params) {
573 606
   return request({
574
-    url:'/api/warehouseout/postsearchstock?keyword='+keyword,
575
-    method:"get",
576
-    params:params
607
+    url: '/api/good/getwarehouseorderinfolist',
608
+    method: 'get',
609
+    params: params
577 610
   })
578 611
 }
579 612
 
580
-export function GetOutStockTotalCount(params){
581
-  
613
+export function postSearchGoodList(keyword, params) {
582 614
   return request({
583
-    url:"/api/warehouseout/getoutstocktotalcount",
584
-    method:"get",
585
-    params:params
615
+    url: '/api/good/postsearchgoodlist?keyword=' + keyword,
616
+    method: 'Get',
617
+    params: params
586 618
   })
587 619
 }
588 620
 
589
-export function postGoodInformation(params){
590
-  console.log("PARMAS22",params)
621
+export function getAllStockList(params) {
591 622
   return request({
592
-    url:"/api/good/postgoodinformation",
593
-    method:"Post",
594
-    data:params,
623
+    url: '/api/good/getallstocklist',
624
+    method: 'get',
625
+    params: params
595 626
   })
596 627
 }
597 628
 
598
-export function postDrugInformation(params){
599
-  
629
+export function getStockDrugCount(params) {
600 630
   return request({
601
-    url:"/api/good/postdruginformation",
602
-    method:"post",
603
-    data:params
631
+    url: '/api/good/getstockdrugcount',
632
+    method: 'get',
633
+    params: params
604 634
   })
605 635
 }
606 636
 
607
-export function getInitializtion(params){
637
+export function getOrderDetailByOrderId(params) {
608 638
   return request({
609
-    url:"/api/good/initializtion",
610
-    method:"get",
611
-    params:params
639
+    url: '/api/good/getorderdetialbyorderid',
640
+    method: 'get',
641
+    params: params
612 642
   })
613 643
 }
614 644
 
615
-export function getWarehouseOrderInfoList(params){
616
-   return request({
617
-      url:"/api/good/getwarehouseorderinfolist",
618
-      method:"get",
619
-      params:params
620
-   })
621
-} 
645
+export function getOrderDetailById(params) {
646
+  return request({
647
+    url: '/api/good/getorderdetaibyid',
648
+    method: 'Get',
649
+    params: params
650
+  })
651
+}
652
+
653
+export function getSingleOutOrderDetail(params) {
654
+  return request({
655
+    url: '/api/good/getsingleoutorderdetail',
656
+    method: 'get',
657
+    params: params
658
+  })
659
+}
660
+
661
+export function getExportStockList(params) {
662
+  return request({
663
+    url: '/api/stock/getexportstocklist',
664
+    method: 'get',
665
+    params: params
666
+  })
667
+}
668
+
669
+export function getOutExportList(params) {
670
+  return request({
671
+    url: '/api/stock/getoutexprotlist',
672
+    method: 'get',
673
+    params: params
674
+  })
675
+}
676
+
677
+export function getSingCancelOrder(params) {
678
+  return request({
679
+    url: '/api/stock/getsinglecancelorder',
680
+    method: 'get',
681
+    params: params
682
+  })
683
+}
684
+
685
+export function getCancelStockOrderPrint(params) {
686
+  return request({
687
+    url: '/api/stock/getcancelstockorderprint',
688
+    method: 'get',
689
+    params: params
690
+  })
691
+}
692
+
693
+export function getStockBatchNumber(params) {
694
+  return request({
695
+    url: '/api/stock/getstockbatchnumber',
696
+    method: 'get',
697
+    params: params
698
+  })
699
+}
700
+
701
+export function getStockFlow(params) {
702
+  return request({
703
+    url: '/api/stock/getstockflow',
704
+    method: 'Get',
705
+    params: params
706
+  })
707
+}
708
+
709
+export function getCancelExportList(params) {
710
+  return request({
711
+    url: '/api/cancel/getcancelexportlist',
712
+    method: 'get',
713
+    params: params
714
+  })
715
+}
716
+
717
+export function getGoodDetailPrintList(params) {
718
+  return request({
719
+    url: '/api/stock/getgooddetailprintlist',
720
+    method: 'get',
721
+    params: params
722
+  })
723
+}
724
+
725
+export function postSearchGoodWarehouseList(params) {
726
+  return request({
727
+    url: '/api/stock/postsearchgoodwarehouselist',
728
+    method: 'get',
729
+    params: params
730
+  })
731
+}
732
+
733
+export function saveAdjustPrice(data) {
734
+  return request({
735
+    url: '/api/stock/saveadjustprice',
736
+    method: 'post',
737
+    data: data
738
+  })
739
+}
740
+
741
+export function getAllStockPrice(params) {
742
+  return request({
743
+    url: '/api/stock/getallstockprice',
744
+    method: 'get',
745
+    params: params
746
+  })
747
+}
748
+
749
+export function getCheckedPrice(params) {
750
+  return request({
751
+    url: '/api/stock/getcheckprice',
752
+    method: 'get',
753
+    params: params
754
+  })
755
+}
756
+
757
+export function SaveCheckedPrice(params) {
758
+  return request({
759
+    url: '/api/stock/savecheckedprice',
760
+    method: 'get',
761
+    params: params
762
+  })
763
+}
764
+
765
+export function getAdjustPriceById(params) {
766
+  return request({
767
+    url: '/api/stock/getadjustpriceinfo',
768
+    method: 'get',
769
+    params: params
770
+  })
771
+}
772
+
773
+export function saveReportStock(data) {
774
+  return request({
775
+    url: '/api/stock/savereportstock',
776
+    method: 'post',
777
+    data: data
778
+  })
779
+}
780
+
781
+export function getReportStockList(params) {
782
+  console.log('params', params)
783
+  return request({
784
+    url: '/api/stock/getreportstocklist',
785
+    method: 'get',
786
+    params: params
787
+  })
788
+}
789
+
790
+export function SaveCheckedDamage(params) {
791
+  return request({
792
+    url: '/api/stock/savecheckdamage',
793
+    method: 'get',
794
+    params: params
795
+  })
796
+}
797
+
798
+export function saveInventory(data) {
799
+  return request({
800
+    url: '/api/stock/saveinventory',
801
+    method: 'post',
802
+    data: data
803
+  })
804
+}
805
+
806
+export function getInventoryList(params) {
807
+  return request({
808
+    url: '/api/stock/getinventorylist',
809
+    method: 'get',
810
+    params: params
811
+  })
812
+}

Двоичные данные
src/assets/img/bailinBottom.jpg Просмотреть файл


Двоичные данные
src/assets/img/bailinTop.jpg Просмотреть файл


+ 75 - 64
src/lang/zh.js Просмотреть файл

@@ -61,10 +61,10 @@ export default {
61 61
     theme: '换肤',
62 62
     clipboardDemo: 'Clipboard',
63 63
     i18n: '国际化',
64
-    medicalScheduling:'医护排班',
65
-    medicalSchedulingIndex:'排班管理',
66
-    class:'班种列表',
67
-    schedulingStatistics:'排班统计',
64
+    medicalScheduling: '医护排班',
65
+    medicalSchedulingIndex: '排班管理',
66
+    class: '班种列表',
67
+    schedulingStatistics: '排班统计',
68 68
     permissionManage: '权限管理',
69 69
     adminManage: '员工管理',
70 70
     roleManage: '权限管理',
@@ -150,32 +150,32 @@ export default {
150 150
     special_permission_manage: '特殊权限管理',
151 151
     schedule_print: '排班打印',
152 152
 
153
-    otherManagement:'其他管理',
154
-    drugsExpiryDate:'药品有效期预警',
155
-    drugsSurplus:'药品剩余预警',
156
-    drugsQuery:'库存查询',
157
-    drugsReportLoss:'药品报损',
158
-    drugsAdjustPrice:'药品调价',
159
-    drugsStockCancel:'退库单',
160
-    drugsStockReturn:'退货单',
161
-    drugsStockOut:'出库单',
162
-    drugsStockIn:'入库单',
163
-    stockDrugs:'药品管理',
164
-    selfPreparedMedicineInfo:'自备药信息',
165
-    selfPreparedMedicineQuery:'自备药查询',
166
-    selfPreparedMedicineIndex:'自备药管理',
167
-    selfPreparedMedicine:'自备药管理',
168
-    consumablesManagement:'耗材管理',
153
+    otherManagement: '其他管理',
154
+    drugsExpiryDate: '药品有效期预警',
155
+    drugsSurplus: '药品剩余预警',
156
+    drugsQuery: '库存查询',
157
+    drugsReportLoss: '药品报损',
158
+    drugsAdjustPrice: '药品调价',
159
+    drugsStockCancel: '退库单',
160
+    // drugsStockReturn:'退货单',
161
+    drugsStockOut: '出库单',
162
+    drugsStockIn: '入库单',
163
+    stockDrugs: '药品管理',
164
+    selfPreparedMedicineInfo: '自备药信息',
165
+    selfPreparedMedicineQuery: '自备药查询',
166
+    selfPreparedMedicineIndex: '自备药管理',
167
+    selfPreparedMedicine: '自备药管理',
168
+    consumablesManagement: '耗材管理',
169 169
     warehouseReceipt: '出入库',
170 170
     warehouseReceiptOther: '出入库',
171 171
     stockInOrder: '入库单',
172
-    salesReturnOrder: '退货单',
172
+    // salesReturnOrder: '退货单',
173 173
     stockOutOrder: '出库单',
174 174
     cancelStockOrder: '退库单',
175 175
     otherStockInOrder: '入库单',
176
-    otherSalesReturnOrder: '退货单',
176
+    // otherSalesReturnOrder: '退货单',
177 177
     otherStockOutOrder: '出库单',
178
-    otherCancelStockOrder: '退库单',
178
+    // otherCancelStockOrder: '退库单',
179 179
     stockInOrderAdd: '新增入库单',
180 180
     salesReturnOrderAdd: '新增退货单',
181 181
     stockOutOrderAdd: '新增出库单',
@@ -185,6 +185,14 @@ export default {
185 185
     stockOutDetail: '出库单详情',
186 186
     cancelStockDetail: '退库单详情',
187 187
     stockDetail: '明细查询',
188
+    stockModifyPrice: '耗材调价',
189
+    stockDamaged: '耗材报损',
190
+    stockWarning: '耗材预警',
191
+    stockInventory: '耗材盘点',
192
+    drugModifyPrice: '药品调价',
193
+    drugDamaged: '药品报损',
194
+    drugWarning: '药品预警',
195
+    drugInventory: '药品盘点',
188 196
 
189 197
     showconfig: '显示配置',
190 198
     user_detail: '使用明细',
@@ -199,53 +207,54 @@ export default {
199 207
     system_prescription: '透析方案模版',
200 208
     integration_config: '集成配置',
201 209
     his_config: 'HIS集成配置',
202
-    medical_template:'门诊模版',
210
+    medical_template: '门诊模版',
203 211
     slow: '慢病管理',
204 212
     scrm: 'SCRM',
205 213
     shop: '分销商城',
206 214
 
207
-    costComparison:'医保费用对照',
208
-    incomeStatistics:'收入统计',
209
-    outpatientRegistration:'门诊挂号',
210
-    outpatientRegistrationIndex:'门诊挂号',
211
-    hospitalIndex:'住院登记',
212
-    hospitalChargesManagement:"住院收费管理",
213
-    outpatientRegistrationRegistrationHistory:'挂号历史',
214
-    outpatientDoctorStation:"门诊医生站",
215
-    outpatientDoctorStationDoctorDesk:'医生工作台',
216
-    outpatientDoctorStationPastInquiries:'既往查询',
217
-    outpatientDoctorStationTemplateManagement:'模板管理',
218
-    outpatientCharges:'门诊收费',
219
-    outpatientChargesManagement:'门诊收费管理',
220
-    outpatientInvoice:'门诊发票',
221
-    outpatientRecord:'住院工作站',
222
-    advancePayment:'预交金',
223
-    labelPrinting:'标签打印',
224
-    summary:'项目消费明细汇总',
225
-    outpatientPharmacy:'门诊药房',
226
-    pharmacyFormula:'药房配发药',
227
-    prescriptionDrugReturn:'处方退药',
228
-    dispensingInquiry:'处方发药查询',
229
-    drugReturnInquiry:'处方退药查询',
230
-    signIndex:'签到排队',
231
-    signIn:'签到窗口',
232
-    lineUp:'排队窗口',
233
-    calling:'排队叫号',
234
-    bedManagement:'床位管理',
235
-    dictionaryManagement:'字典管理',
236
-    templateManagement:'模板管理',
237
-    drugStockUserDetail:"出库人明细",
238
-    DepartManage:"科室管理",
239
-    basicConfig:'基础配置',
215
+    costComparison: '医保费用对照',
216
+    incomeStatistics: '收入统计',
217
+    outpatientRegistration: '门诊挂号',
218
+    outpatientRegistrationIndex: '门诊挂号',
219
+    hospitalIndex: '住院登记',
220
+    hospitalChargesManagement: '住院收费管理',
221
+    outpatientRegistrationRegistrationHistory: '挂号历史',
222
+    outpatientDoctorStation: '门诊医生站',
223
+    outpatientDoctorStationDoctorDesk: '医生工作台',
224
+    outpatientDoctorStationPastInquiries: '既往查询',
225
+    outpatientDoctorStationTemplateManagement: '模板管理',
226
+    outpatientCharges: '门诊收费',
227
+    outpatientChargesManagement: '门诊收费管理',
228
+    outpatientInvoice: '门诊发票',
229
+    outpatientRecord: '住院工作站',
230
+    advancePayment: '预交金',
231
+    labelPrinting: '标签打印',
232
+    summary: '项目消费明细汇总',
233
+    outpatientPharmacy: '门诊药房',
234
+    pharmacyFormula: '药房配发药',
235
+    prescriptionDrugReturn: '处方退药',
236
+    dispensingInquiry: '处方发药查询',
237
+    drugReturnInquiry: '处方退药查询',
238
+    signIndex: '签到排队',
239
+    signIn: '签到窗口',
240
+    lineUp: '排队窗口',
241
+    calling: '排队叫号',
242
+    bedManagement: '床位管理',
243
+    dictionaryManagement: '字典管理',
244
+    templateManagement: '模板管理',
245
+    drugStockUserDetail: '出库人明细',
246
+    DepartManage: '科室管理',
247
+    basicConfig: '基础配置',
240 248
 
241
-    histemplate:'处方模版',
242
-    outpatientSickRecord:"人员定点病种备案",
243
-    airDisinfect:'空气消毒',
244
-    objectTableDisinfect:'物表消毒',
249
+    histemplate: '处方模版',
250
+    outpatientSickRecord: '人员定点病种备案',
251
+    airDisinfect: '空气消毒',
252
+    objectTableDisinfect: '物表消毒',
245 253
 
254
+    hospitalStation: '住院工作站',
255
+    pastInquiries: '既往查询',
246 256
 
247
-    hospitalStation:"住院工作站",
248
-    pastInquiries:"既往查询",
257
+    prescriptionTemplate: '处方模版'
249 258
 
250 259
   },
251 260
   navbar: {
@@ -351,6 +360,8 @@ export default {
351 360
     rescue_record: '抢救记录',
352 361
     manage_ment: '设备管理',
353 362
     nursing_record: '透析护理记录',
354
-    special_record: '特殊记录'
363
+    special_record: '特殊记录',
364
+    template_summary: '治疗小结',
365
+    template_plan: '个性化方案'
355 366
   }
356 367
 }

+ 23 - 15
src/router/index_路由未分离前.js Просмотреть файл

@@ -604,7 +604,7 @@ export const xt_asyncRouterMap = [
604 604
         name: 'weight',
605 605
         meta: { title: 'weight', noCache: true }
606 606
       },
607
-   
607
+
608 608
       {
609 609
         path: '/patients/patient/:id/dialysisRecord',
610 610
         component: () => import('@/xt_pages/user/dialysisRecord'),
@@ -784,12 +784,14 @@ export const xt_asyncRouterMap = [
784 784
         component: () => import('@/xt_pages/stock/otherStockInOrder'),
785 785
         name: 'otherStockInOrder',
786 786
         meta: { title: 'otherStockInOrder', noCache: true }
787
-      }, {
788
-        path: '/stock/return',
789
-        component: () => import('@/xt_pages/stock/salesReturnOrder'),
790
-        name: 'salesReturnOrder',
791
-        meta: { title: 'salesReturnOrder', noCache: true }
792
-      }, {
787
+      },
788
+      // {
789
+      //   path: '/stock/return',
790
+      //   component: () => import('@/xt_pages/stock/salesReturnOrder'),
791
+      //   name: 'salesReturnOrder',
792
+      //   meta: { title: 'salesReturnOrder', noCache: true }
793
+      // },
794
+      {
793 795
         path: '/stock/return/other',
794 796
         component: () => import('@/xt_pages/stock/otherSalesReturnOrder'),
795 797
         name: 'otherSalesReturnOrder',
@@ -820,19 +822,22 @@ export const xt_asyncRouterMap = [
820 822
         component: () => import('@/xt_pages/stock/stockQuery'),
821 823
         name: 'stockQuery',
822 824
         meta: { title: 'stockQuery' }
823
-      }, {
825
+      },
826
+      {
824 827
         path: '/stock/detail',
825 828
         component: () => import('@/xt_pages/stock/stockDetailIndex'),
826 829
         name: 'stockDetail',
827 830
         meta: { title: 'stockDetail' }
828
-      }, {
831
+      },
832
+      {
829 833
         path: '/stock/in/add',
830 834
         component: () => import('@/xt_pages/stock/stockInOrderAdd'),
831 835
         name: 'stockInOrderAdd',
832 836
         hidden: true,
833 837
         is_menu: false,
834 838
         meta: { title: 'stockInOrderAdd' }
835
-      }, {
839
+      },
840
+      {
836 841
         path: '/stock/in/detail',
837 842
         component: () => import('@/xt_pages/stock/stockInDetail'),
838 843
         name: 'stockInDetail',
@@ -860,21 +865,24 @@ export const xt_asyncRouterMap = [
860 865
         hidden: true,
861 866
         is_menu: false,
862 867
         meta: { title: 'stockOutOrderAdd', noCache: true }
863
-      }, {
868
+      },
869
+      {
864 870
         path: '/stock/out/detail',
865 871
         component: () => import('@/xt_pages/stock/stockOutDetail'),
866 872
         name: 'stockOutDetail',
867 873
         hidden: true,
868 874
         is_menu: false,
869 875
         meta: { title: 'stockOutDetail', noCache: true }
870
-      }, {
876
+      },
877
+      {
871 878
         path: '/stock/cancel/add',
872 879
         component: () => import('@/xt_pages/stock/cancelStockOrderAdd'),
873 880
         name: 'cancelStockOrderAdd',
874 881
         hidden: true,
875 882
         is_menu: false,
876 883
         meta: { title: 'cancelStockOrderAdd', noCache: true }
877
-      }, {
884
+      },
885
+      {
878 886
         path: '/stock/cancel/detail',
879 887
         component: () => import('@/xt_pages/stock/cancelStockDetail'),
880 888
         name: 'cancelStockDetail',
@@ -887,8 +895,8 @@ export const xt_asyncRouterMap = [
887 895
         component: () => import('@/xt_pages/stock/index'),
888 896
         name: 'config',
889 897
         meta: { title: 'config' }
890
-      },
891
-     
898
+      }
899
+
892 900
     ]
893 901
   },
894 902
   {

+ 24 - 0
src/router/modules/dialysis.js Просмотреть файл

@@ -399,6 +399,18 @@ export default {
399 399
         noCache: true
400 400
       }
401 401
     },
402
+    {
403
+      path: '/dialysis/print/batch/thirtySeven',
404
+      component: () =>
405
+        import('@/xt_pages/dialysis/batch_print/batch_print_order_thirtySeven'),
406
+      hidden: true,
407
+      is_menu: false,
408
+      name: 'batch_print_order_thirtySeven',
409
+      meta: {
410
+        title: '批量打印',
411
+        noCache: true
412
+      }
413
+    },
402 414
     {
403 415
       path: '/dialysis/print/batch/thirtyNine',
404 416
       component: () =>
@@ -411,6 +423,18 @@ export default {
411 423
         noCache: true
412 424
       }
413 425
     },
426
+    {
427
+      path: '/dialysis/print/batch/forty',
428
+      component: () =>
429
+        import('@/xt_pages/dialysis/batch_print/batch_print_order_forty'),
430
+      hidden: true,
431
+      is_menu: false,
432
+      name: 'batch_print_order_forty',
433
+      meta: {
434
+        title: '批量打印',
435
+        noCache: true
436
+      }
437
+    },
414 438
     {
415 439
       path: '/dialysis/print/batch/thirtyThree_one',
416 440
       component: () =>

+ 158 - 27
src/router/modules/drugs.js Просмотреть файл

@@ -13,40 +13,80 @@ export default {
13 13
   },
14 14
   children: [
15 15
     {
16
-        path: '/stock/drugs/stock/query',
17
-        component: () => import('@/xt_pages/stock/drugs/query'),
18
-        name: 'drugsQuery',
19
-        meta: { title: 'drugsQuery', noCache: true }
16
+      path: '/stock/drugs/stock/query',
17
+      component: () => import('@/xt_pages/stock/drugs/query'),
18
+      name: 'drugsQuery',
19
+      meta: { title: 'drugsQuery', noCache: true }
20 20
     },
21 21
     {
22
-        path: '/stock/drugs/stock/in',
23
-        component: () => import('@/xt_pages/stock/drugs/drugStockInOrder'),
24
-        name: 'drugsStockIn',
25
-        meta: { title: 'drugsStockIn', noCache: true }
22
+      path: '/stock/drugs/stock/in',
23
+      component: () => import('@/xt_pages/stock/drugs/drugStockInOrder'),
24
+      name: 'drugsStockIn',
25
+      meta: { title: 'drugsStockIn', noCache: true }
26 26
     },
27 27
     {
28
-        path: '/stock/drugs/stock/out',
29
-        component: () => import('@/xt_pages/stock/drugs/drugStockOutOrder'),
30
-        name: 'drugsStockOut',
31
-        meta: { title: 'drugsStockOut', noCache: true }
28
+      path: '/stock/drugs/stock/out',
29
+      component: () => import('@/xt_pages/stock/drugs/drugStockOutOrder'),
30
+      name: 'drugsStockOut',
31
+      meta: { title: 'drugsStockOut', noCache: true }
32 32
     },
33 33
     {
34
-        path: '/stock/drugs/stock/return',
35
-        component: () => import('@/xt_pages/stock/drugs/drugSalesReturnOrder'),
36
-        name: 'drugsStockReturn',
37
-        meta: { title: 'drugsStockReturn', noCache: true }
34
+      path: '/stock/drugs/drugModifyPrice',
35
+      component: () => import('@/xt_pages/stock/drugs/drugModifyPrice'),
36
+      name: 'drugModifyPrice',
37
+      meta: { title: 'drugModifyPrice', noCache: true }
38 38
     },
39 39
     {
40
-        path: '/stock/drugs/stock/cancel',
41
-        component: () => import('@/xt_pages/stock/drugs/cancelDrugStockOrder'),
42
-        name: 'drugsStockCancel',
43
-        meta: { title: 'drugsStockCancel', noCache: true }
40
+      path: '/stock/drugs/drugModifyPricePrint',
41
+      component: () => import('@/xt_pages/stock/drugs/drugModifyPricePrint'),
42
+      name: 'drugModifyPricePrint',
43
+      hidden: true,
44
+      is_menu: false,
45
+      meta: { title: 'drugModifyPricePrint', noCache: true }
44 46
     },
45 47
     {
46
-      path:'/stock/drugs/stock/detail',
47
-      component:()=>import('@/xt_pages/stock/drugs/drugIndex'),
48
-      name:'drugDetail',
49
-      meta:{title:'明细查询',noCache:true}
48
+      path: '/stock/drugs/drugDamaged',
49
+      component: () => import('@/xt_pages/stock/drugs/drugDamaged'),
50
+      name: 'drugDamaged',
51
+      meta: { title: 'drugDamaged', noCache: true }
52
+    },
53
+    {
54
+      path: '/stock/drugs/drugWarning',
55
+      component: () => import('@/xt_pages/stock/drugs/drugWarning'),
56
+      name: 'drugWarning',
57
+      meta: { title: 'drugWarning', noCache: true }
58
+    },
59
+    {
60
+      path: '/stock/drugs/drugInventory',
61
+      component: () => import('@/xt_pages/stock/drugs/drugInventory'),
62
+      name: 'drugInventory',
63
+      meta: { title: 'drugInventory', noCache: true }
64
+    },
65
+    {
66
+      path: '/stock/drugs/inventoryPrint',
67
+      component: () => import('@/xt_pages/stock/drugs/inventoryPrint'),
68
+      name: 'inventoryPrint',
69
+      hidden: true,
70
+      is_menu: false,
71
+      meta: { title: 'inventoryPrint', noCache: true }
72
+    },
73
+    // {
74
+    //   path: '/stock/drugs/stock/return',
75
+    //   component: () => import('@/xt_pages/stock/drugs/drugSalesReturnOrder'),
76
+    //   name: 'drugsStockReturn',
77
+    //   meta: { title: 'drugsStockReturn', noCache: true }
78
+    // },
79
+    {
80
+      path: '/stock/drugs/stock/cancel',
81
+      component: () => import('@/xt_pages/stock/drugs/cancelDrugStockOrder'),
82
+      name: 'drugsStockCancel',
83
+      meta: { title: 'drugsStockCancel', noCache: true }
84
+    },
85
+    {
86
+      path: '/stock/drugs/stock/detail',
87
+      component: () => import('@/xt_pages/stock/drugs/drugIndex'),
88
+      name: 'drugDetail',
89
+      meta: { title: '明细查询', noCache: true }
50 90
     },
51 91
     // {
52 92
     //     path: '/stock/drugs/stock/adjustPrice',
@@ -79,7 +119,8 @@ export default {
79 119
       hidden: true,
80 120
       is_menu: false,
81 121
       meta: { title: 'drugStockInOrderAdd', noCache: true }
82
-    },{
122
+    },
123
+    {
83 124
       path: '/drugstock/in/detail',
84 125
       component: () => import('@/xt_pages/stock/drugs/drugStockInDetail'),
85 126
       name: 'drugStockInDetail',
@@ -121,14 +162,23 @@ export default {
121 162
       hidden: true,
122 163
       is_menu: false,
123 164
       meta: { title: 'cancelDrugStockOrderAdd', noCache: true }
124
-    },{
165
+    }, {
125 166
       path: '/drugstock/cancel/detail',
126 167
       component: () => import('@/xt_pages/stock/drugs/cancelDrugStockDetail'),
127 168
       name: 'cancelDrugStockDetail',
128 169
       hidden: true,
129 170
       is_menu: false,
130 171
       meta: { title: 'cancelDrugStockDetail', noCache: true }
131
-    },{
172
+    },
173
+    {
174
+      path: '/drugstock/cancel/edit',
175
+      component: () => import('@/xt_pages/stock/drugs/cancelDrugStockOrderEdit'),
176
+      name: 'cancelDrugStockOrderEdit',
177
+      hidden: true,
178
+      is_menu: false,
179
+      meta: { title: 'cancelDrugStockOrderEdit', noCache: true }
180
+    },
181
+    {
132 182
       path: '/drugstock/user/detail',
133 183
       component: () => import('@/xt_pages/stock/drugs/drugStockUserDetail'),
134 184
       name: 'drugStockUserDetail',
@@ -136,5 +186,86 @@ export default {
136 186
       is_menu: false,
137 187
       meta: { title: 'drugStockUserDetail', noCache: true }
138 188
     },
189
+
190
+    // 编辑药品入库单
191
+    {
192
+      path: '/drugstock/in/order/edit',
193
+      component: () => import('@/xt_pages/stock/drugs/drugStockInOrderEdit'),
194
+      name: 'drugStockInOrderEdit',
195
+      hidden: true,
196
+      is_menu: false,
197
+      meta: { title: 'drugStockInOrderEdit', noCache: true }
198
+    },
199
+
200
+    {
201
+      path: '/drugstock/in/drugstockflow',
202
+      component: () => import('@/xt_pages/stock/drugs/drugStockFlow'),
203
+      name: 'drugStockFlow',
204
+      hidden: true,
205
+      is_menu: false,
206
+      meta: { title: 'drugStockFlow', noCache: true }
207
+    },
208
+
209
+    {
210
+      path: '/drugstock/in/drugbatchnumber',
211
+      component: () => import('@/xt_pages/stock/drugs/drugBatchNumber'),
212
+      name: 'drugBatchNumber',
213
+      hidden: true,
214
+      is_menu: false,
215
+      meta: { title: 'drugBatchNumber', noCache: true }
216
+    },
217
+    {
218
+      path: '/stock/stockoutorderedit',
219
+      component: () => import('@/xt_pages/stock/stockOutOrderEdit'),
220
+      name: 'stockOutOrderEdit',
221
+      hidden: true,
222
+      is_menu: false,
223
+      meta: { title: 'stockOutOrderEdit', noCache: true }
224
+    },
225
+    {
226
+      path: '/stock/in/order/edit',
227
+      component: () => import('@/xt_pages/stock/stockInOrderEdit'),
228
+      name: 'stockInOrderEdit',
229
+      hidden: true,
230
+      is_menu: false,
231
+      meta: { title: 'stockInOrderEdit' }
232
+    },
233
+
234
+    {
235
+      path: '/stock/in/stockflow',
236
+      component: () => import('@/xt_pages/stock/stockFlow'),
237
+      name: 'stockFlow',
238
+      hidden: true,
239
+      is_menu: false,
240
+      meta: { title: 'stockFlow' }
241
+    },
242
+
243
+    {
244
+      path: '/stock/in/stockbatchnumber',
245
+      component: () => import('@/xt_pages/stock/stockBatchNumber'),
246
+      name: 'stockBatchNumber',
247
+      hidden: true,
248
+      is_menu: false,
249
+      meta: { title: 'stockBatchNumber' }
250
+    },
251
+    {
252
+      path: '/drug/out/drugstockoutorderedit',
253
+      component: () => import('@/xt_pages/stock/drugs/drugStockOutOrderEdit'),
254
+      name: 'drugStockOutOrderEdit',
255
+      hidden: true,
256
+      is_menu: false,
257
+      meta: { title: 'drugStockOutOrderEdit' }
258
+
259
+    },
260
+    {
261
+      path: '/drug/cancel/print',
262
+      component: () => import('@/xt_pages/stock/drugs/cancelDrugOrderPrint'),
263
+      name: 'cancelDrugOrderPrint',
264
+      hidden: true,
265
+      is_menu: false,
266
+      meta: { title: 'cancelDrugOrderPrint' }
267
+
268
+    }
269
+
139 270
   ]
140 271
 }

+ 18 - 0
src/router/modules/outpatientDoctorStation.js Просмотреть файл

@@ -24,6 +24,24 @@ export default {
24 24
         name: 'outpatientDoctorStationPastInquiries',
25 25
         meta: { title: 'outpatientDoctorStationPastInquiries', noCache: true }
26 26
     },
27
+    {
28
+      path: '/outpatientDoctorStation/prescriptionTemplate',
29
+      component: () => import('@/xt_pages/outpatientDoctorStation/prescriptionTemplate'),
30
+      name: 'prescriptionTemplate',
31
+      meta: { title: 'prescriptionTemplate', noCache: true }
32
+    },
33
+
34
+    {
35
+      path: '/outpatientDoctorStation/prescriptionTemplatedetail',
36
+      component: () => import('@/xt_pages/outpatientDoctorStation/prescriptionTemplatedetail'),
37
+      name: 'prescriptionTemplatedetail',
38
+      hidden: true,
39
+      is_menu: false,
40
+      meta: { title: 'prescriptionTemplatedetail', noCache: true }
41
+    },
42
+
43
+
44
+
27 45
     {
28 46
         path: '/outpatientDoctorStation/templateManagement',
29 47
         component: () => import('@/xt_pages/outpatientDoctorStation/templateManagement'),

+ 25 - 3
src/router/modules/patient.js Просмотреть файл

@@ -139,7 +139,7 @@ export default {
139 139
     }
140 140
   },
141 141
   {
142
-    path:"/patients/patients/:id/inspectionInfectious",
142
+    path: '/patients/patients/:id/inspectionInfectious',
143 143
     component: () => import('@/xt_pages/user/inspectionInfectious'),
144 144
     hidden: true,
145 145
     is_menu: false,
@@ -148,7 +148,17 @@ export default {
148 148
       title: 'inspectionInfectious',
149 149
       noCache: true
150 150
     }
151
-  
151
+  },
152
+  {
153
+    path: '/patient/patient/:id/templateSummary',
154
+    component: () => import('@/xt_pages/user/templateSummary'),
155
+    hidden: true,
156
+    is_menu: false,
157
+    name: 'templateSummary',
158
+    meta: {
159
+      title: 'templateSummary',
160
+      noCache: true
161
+    }
152 162
   },
153 163
   {
154 164
     path: '/patients/course',
@@ -182,7 +192,8 @@ export default {
182 192
       title: 'proeducation',
183 193
       noCache: true
184 194
     }
185
-  }, {
195
+  },
196
+  {
186 197
     path: '/course/print',
187 198
     component: () => import('@/xt_pages/user/coursePrint'),
188 199
     hidden: true,
@@ -192,6 +203,17 @@ export default {
192 203
       title: 'coursePrint',
193 204
       noCache: true
194 205
     }
206
+  },
207
+  {
208
+    path: '/patient/patient/templateSummary/print',
209
+    component: () => import('@/xt_pages/user/templateSummaryPrint'),
210
+    hidden: true,
211
+    is_menu: false,
212
+    name: 'templateSummary',
213
+    meta: {
214
+      title: 'templateSummary',
215
+      noCache: true
216
+    }
195 217
   }
196 218
   ]
197 219
 }

+ 34 - 34
src/router/modules/selfPreparedMedicine.js Просмотреть файл

@@ -21,30 +21,30 @@ export default {
21 21
     },
22 22
 
23 23
     {
24
-        path: '/stock/selfPreparedMedicineIndex',
25
-        component: () => import('@/xt_pages/stock/selfPreparedMedicine/index'),
26
-        name: 'selfPreparedMedicineIndex',
27
-        meta: { title: 'selfPreparedMedicineIndex', noCache: true }
24
+      path: '/stock/selfPreparedMedicineIndex',
25
+      component: () => import('@/xt_pages/stock/selfPreparedMedicine/index'),
26
+      name: 'selfPreparedMedicineIndex',
27
+      meta: { title: 'selfPreparedMedicineIndex', noCache: true }
28 28
     },
29 29
     {
30
-        path: '/stock/selfPreparedMedicineQuery',
31
-        component: () => import('@/xt_pages/stock/selfPreparedMedicine/query'),
32
-        name: 'selfPreparedMedicineQuery',
33
-        meta: { title: 'selfPreparedMedicineQuery', noCache: true }
30
+      path: '/stock/selfPreparedMedicineQuery',
31
+      component: () => import('@/xt_pages/stock/selfPreparedMedicine/query'),
32
+      name: 'selfPreparedMedicineQuery',
33
+      meta: { title: 'selfPreparedMedicineQuery', noCache: true }
34 34
     },
35 35
     {
36
-        path: '/stock/selfPreparedMedicineQueryPrint',
37
-        component: () => import('@/xt_pages/stock/selfPreparedMedicine/queryPrint'),
38
-        name: 'selfPreparedMedicineQueryPrint',
39
-        hidden: true,
40
-        is_menu: false,
41
-        meta: { title: 'selfPreparedMedicineQueryPrint', noCache: true }
36
+      path: '/stock/selfPreparedMedicineQueryPrint',
37
+      component: () => import('@/xt_pages/stock/selfPreparedMedicine/queryPrint'),
38
+      name: 'selfPreparedMedicineQueryPrint',
39
+      hidden: true,
40
+      is_menu: false,
41
+      meta: { title: 'selfPreparedMedicineQueryPrint', noCache: true }
42 42
     },
43 43
     {
44
-        path: '/stock/selfPreparedMedicineInfo',
45
-        component: () => import('@/xt_pages/stock/selfPreparedMedicine/info'),
46
-        name: 'selfPreparedMedicineInfo',
47
-        meta: { title: 'selfPreparedMedicineInfo', noCache: true }
44
+      path: '/stock/selfPreparedMedicineInfo',
45
+      component: () => import('@/xt_pages/stock/selfPreparedMedicine/info'),
46
+      name: 'selfPreparedMedicineInfo',
47
+      meta: { title: 'selfPreparedMedicineInfo', noCache: true }
48 48
     },
49 49
     {
50 50
       path: '/stock/stockprint',
@@ -53,40 +53,40 @@ export default {
53 53
       hidden: true,
54 54
       is_menu: false,
55 55
       meta: { title: 'stockprint', noCache: true }
56
-     },
57
-     {
58
-       path:"/stock/selfstockprint",
59
-       component:()=>import('@/xt_pages/stock/selfStockPrint'),
60
-       name:'selfStockQuery',
61
-       hidden:true,
62
-       is_menu:false,
63
-       meta:{title:'selfStockPrint',noCache:true}
64
-     },
56
+    },
57
+    {
58
+      path: '/stock/selfstockprint',
59
+      component: () => import('@/xt_pages/stock/selfStockPrint'),
60
+      name: 'selfStockQuery',
61
+      hidden: true,
62
+      is_menu: false,
63
+      meta: { title: 'selfStockPrint', noCache: true }
64
+    },
65 65
 
66
-     {
66
+    {
67 67
       path: '/stock/stockprint',
68 68
       component: () => import('@/xt_pages/stock/stockPrint'),
69 69
       name: 'stockqueryprint',
70 70
       hidden: true,
71 71
       is_menu: false,
72 72
       meta: { title: 'stockprint', noCache: true }
73
-     },
73
+    },
74 74
 
75
-     {
75
+    {
76 76
       path: '/stock/in/detail/print',
77 77
       component: () => import('@/xt_pages/stock/stockInOrderDetailPrint'),
78 78
       name: 'stockInDetailPrint',
79 79
       hidden: true,
80 80
       is_menu: false,
81
-      meta: { title: 'stockInDetailPrint',noCache: true }
81
+      meta: { title: 'stockInDetailPrint', noCache: true }
82 82
     },
83 83
     {
84
-      path: '/stock/out/detail',
84
+      path: '/stock/out/detail/print',
85 85
       component: () => import('@/xt_pages/stock/stockOutOrderDetailPrint'),
86 86
       name: 'stockOutDetailPrint',
87 87
       hidden: true,
88 88
       is_menu: false,
89
-      meta: { title: 'stockOutDetailPrint',noCache: true }
90
-    },
89
+      meta: { title: 'stockOutDetailPrint', noCache: true }
90
+    }
91 91
   ]
92 92
 }

+ 78 - 15
src/router/modules/stock.js Просмотреть файл

@@ -24,12 +24,12 @@ export default {
24 24
       name: 'stockInOrder',
25 25
       meta: { title: 'stockInOrder', noCache: true }
26 26
     },
27
-    {
28
-      path: '/stock/return',
29
-      component: () => import('@/xt_pages/stock/salesReturnOrder'),
30
-      name: 'salesReturnOrder',
31
-      meta: { title: 'salesReturnOrder', noCache: true }
32
-    },
27
+    // {
28
+    //   path: '/stock/return',
29
+    //   component: () => import('@/xt_pages/stock/salesReturnOrder'),
30
+    //   name: 'salesReturnOrder',
31
+    //   meta: { title: 'salesReturnOrder', noCache: true }
32
+    // },
33 33
     {
34 34
       path: '/stock/out',
35 35
       component: () => import('@/xt_pages/stock/stockOutOrder'),
@@ -42,7 +42,47 @@ export default {
42 42
       name: 'cancelStockOrder',
43 43
       meta: { title: 'cancelStockOrder', noCache: true }
44 44
     },
45
-    
45
+    {
46
+      path: '/stock/stockModifyPrice',
47
+      component: () => import('@/xt_pages/stock/stockModifyPrice'),
48
+      name: 'stockModifyPrice',
49
+      meta: { title: 'stockModifyPrice', noCache: true }
50
+    },
51
+    {
52
+      path: '/stock/stockModifyPricePrint',
53
+      component: () => import('@/xt_pages/stock/stockModifyPricePrint'),
54
+      name: 'stockModifyPricePrint',
55
+      hidden: true,
56
+      is_menu: false,
57
+      meta: { title: 'stockModifyPricePrint', noCache: true }
58
+    },
59
+    {
60
+      path: '/stock/stockDamaged',
61
+      component: () => import('@/xt_pages/stock/stockDamaged'),
62
+      name: 'stockDamaged',
63
+      meta: { title: 'stockDamaged', noCache: true }
64
+    },
65
+    {
66
+      path: '/stock/stockWarning',
67
+      component: () => import('@/xt_pages/stock/stockWarning'),
68
+      name: 'stockWarning',
69
+      meta: { title: 'stockWarning', noCache: true }
70
+    },
71
+    {
72
+      path: '/stock/stockInventory',
73
+      component: () => import('@/xt_pages/stock/stockInventory'),
74
+      name: 'stockInventory',
75
+      meta: { title: 'stockInventory', noCache: true }
76
+    },
77
+    {
78
+      path: '/stock/inventoryPrint',
79
+      component: () => import('@/xt_pages/stock/inventoryPrint'),
80
+      name: 'inventoryPrint',
81
+      hidden: true,
82
+      is_menu: false,
83
+      meta: { title: 'inventoryPrint', noCache: true }
84
+    },
85
+
46 86
     // {
47 87
     //   path: "/stock/",
48 88
     //   component: Layout,
@@ -93,7 +133,7 @@ export default {
93 133
     //     }
94 134
     //   ]
95 135
     // },
96
-    
136
+
97 137
     {
98 138
       path: '/stock/detail',
99 139
       component: () => import('@/xt_pages/stock/stockDetailIndex'),
@@ -202,19 +242,19 @@ export default {
202 242
       }
203 243
     },
204 244
     {
205
-      path:"/stock/drugcancelprint",
206
-      component:()=>import('@/xt_pages/stock/drugs/drugCancelOurderPrint'),
245
+      path: '/stock/drugcancelprint',
246
+      component: () => import('@/xt_pages/stock/drugs/drugCancelOurderPrint'),
207 247
       hidden: true,
208 248
       is_menu: false,
209 249
       name: 'stock_print',
210 250
       meta: {
211
-        title: '库打印',
251
+        title: '退库打印',
212 252
         noCache: true
213 253
       }
214 254
     },
215 255
     {
216
-      path:"/stock/drugoutorderprint",
217
-      component:()=>import('@/xt_pages/stock/drugs/drugOutOrderPrint'),
256
+      path: '/stock/drugoutorderprint',
257
+      component: () => import('@/xt_pages/stock/drugs/drugOutOrderPrint'),
218 258
       hidden: true,
219 259
       is_menu: false,
220 260
       name: 'stock_print',
@@ -224,8 +264,8 @@ export default {
224 264
       }
225 265
     },
226 266
     {
227
-      path:"/stock/drugcanceldetaiprint",
228
-      component:()=>import('@/xt_pages/stock/drugs/drugCancelDetailPrint'),
267
+      path: '/stock/drugcanceldetaiprint',
268
+      component: () => import('@/xt_pages/stock/drugs/drugCancelDetailPrint'),
229 269
       hidden: true,
230 270
       is_menu: false,
231 271
       name: 'stock_print',
@@ -269,5 +309,28 @@ export default {
269 309
         noCache: true
270 310
       }
271 311
     },
312
+    {
313
+      path: '/stock/cancel/cancelstockorderedit',
314
+      component: () => import('@/xt_pages/stock/cancelStockOrderEdit'),
315
+      hidden: true,
316
+      is_menu: false,
317
+      name: 'drugQueryPrint',
318
+      meta: {
319
+        title: '耗材退库打印',
320
+        noCache: true
321
+      }
322
+    },
323
+
324
+    {
325
+      path: '/stock/drugs/cancelstockorderprint',
326
+      component: () => import('@/xt_pages/stock/cancelStockOrderPrint'),
327
+      hidden: true,
328
+      is_menu: false,
329
+      name: 'stock_print',
330
+      meta: {
331
+        title: '退库打印',
332
+        noCache: true
333
+      }
334
+    }
272 335
   ]
273 336
 }

+ 58 - 43
src/store/modules/globalConfig.js Просмотреть файл

@@ -706,6 +706,21 @@ const global_config = {
706 706
         zongliang_unit: 'mg',
707 707
         gaimingcheng_unit: '',
708 708
         gaijiliang_unit: ''
709
+      },
710
+      11: {
711
+        id: 11,
712
+        name: '那曲肝素',
713
+        type: 1,
714
+        shouji: 1,
715
+        weichi: 1,
716
+        zongliang: 1,
717
+        gaimingcheng: -1,
718
+        gaijiliang: -1,
719
+        shouji_unit: 'mg',
720
+        weichi_unit: 'mg/h',
721
+        zongliang_unit: 'mg',
722
+        gaimingcheng_unit: '',
723
+        gaijiliang_unit: ''
709 724
       }
710 725
     },
711 726
     anticoagulants_set: {
@@ -1866,49 +1881,49 @@ const global_config = {
1866 1881
       id: 27,
1867 1882
       name: '万u'
1868 1883
     }, {
1869
-        id: 28,
1870
-        name: '片'
1871
-      },{
1872
-        id: 29,
1873
-        name: '只'
1874
-      },{
1875
-        id: 30,
1876
-        name: '次'
1877
-      },{
1878
-        id: 31,
1879
-        name: '米'
1880
-      },{
1881
-        id: 32,
1882
-        name: '对'
1883
-      },
1884
-      {
1885
-        id: 31,
1886
-        name: '米'
1887
-      },
1888
-      {
1889
-        id: 32,
1890
-        name: '对'
1891
-      },
1892
-      {
1893
-        id: 33,
1894
-        name: '万份'
1895
-      },
1896
-      {
1897
-        id: 34,
1898
-        name: '副'
1899
-      },
1900
-      {
1901
-        id: 35,
1902
-        name: '本'
1903
-      },
1904
-      {
1905
-        id: 36,
1906
-        name: '轴'
1907
-      },
1908
-      {
1909
-        id: 37,
1910
-        name: '辆'
1911
-      },
1884
+      id: 28,
1885
+      name: '片'
1886
+    }, {
1887
+      id: 29,
1888
+      name: '只'
1889
+    }, {
1890
+      id: 30,
1891
+      name: '次'
1892
+    }, {
1893
+      id: 31,
1894
+      name: '米'
1895
+    }, {
1896
+      id: 32,
1897
+      name: '对'
1898
+    },
1899
+    {
1900
+      id: 31,
1901
+      name: '米'
1902
+    },
1903
+    {
1904
+      id: 32,
1905
+      name: '对'
1906
+    },
1907
+    {
1908
+      id: 33,
1909
+      name: '万份'
1910
+    },
1911
+    {
1912
+      id: 34,
1913
+      name: '副'
1914
+    },
1915
+    {
1916
+      id: 35,
1917
+      name: '本'
1918
+    },
1919
+    {
1920
+      id: 36,
1921
+      name: '轴'
1922
+    },
1923
+    {
1924
+      id: 37,
1925
+      name: '辆'
1926
+    }
1912 1927
     ],
1913 1928
     body_fluid: [{
1914 1929
       id: 1,

+ 3 - 0
src/views/layout/Layout.vue Просмотреть файл

@@ -346,4 +346,7 @@ export default {
346 346
   .new-main-container{
347 347
     width: calc(100% - 220px);
348 348
   }
349
+  .sidebar-container{
350
+    transform: translate3d(0, 0, 0) !important;
351
+  }
349 352
 </style>

+ 55 - 5
src/xt_pages/data/basicConfig.vue Просмотреть файл

@@ -26,6 +26,15 @@
26 26
           </p>
27 27
         </div>
28 28
 
29
+        <div class="configBox">
30
+            <p style="font-size:18px;font-weight:bold">处方项目同步到临时医嘱</p>
31
+            <p style="font-size:14px;margin-top:5px;color:#333;">开启门诊处方的项目同步后,护士则在血透的临时医嘱中可以看到相关的耗材/检验检查数据</p>
32
+            <p style="margin-top:20px;">门诊处方项目同步到透析医嘱:
33
+                <el-switch v-model="is_open_xt_his_project" @change="changeFuncProject"></el-switch>
34
+            </p>
35
+        </div>
36
+
37
+
29 38
         <!-- <div class="configBox">
30 39
           <p style="font-size:18px;font-weight:bold">血压数据自动获取</p>
31 40
           <p style="font-size:14px;margin-top:5px;color:#333;">在联机的状态下,开启透析监测-血压数据自动获取功能后,则不需要手动输入,数据会自动上传到监测中</p>
@@ -71,14 +80,14 @@
71 80
                 <!--<el-switch v-model="value"></el-switch>-->
72 81
             <!--</p>-->
73 82
         <!--</div>-->
74
-        
83
+
75 84
     </div>
76 85
   </div>
77 86
 </template>
78 87
 
79 88
 <script>
80 89
 import BreadCrumb from "@/xt_pages/components/bread-crumb";
81
-import { getAllIsOpenInit,postXtHisIsOpen,postMonitorIsOpen,changeFuncPrint,getDataPrintList} from '@/api/config'
90
+import { getAllIsOpenInit,postXtHisIsOpen,postMonitorIsOpen,changeFuncPrint,getDataPrintList,postXtHisProjectIsOpen} from '@/api/config'
82 91
 
83 92
 export default {
84 93
   name: "printTemplate",
@@ -95,6 +104,7 @@ export default {
95 104
       is_open_monitor:false,
96 105
       is_open_order:false,
97 106
       is_open_print:false,
107
+      is_open_xt_his_project: false,
98 108
     };
99 109
   },
100 110
   methods: {
@@ -104,10 +114,18 @@ export default {
104 114
           if (response.data.state === 1) {
105 115
             if(response.data.data.is_open_xt_his == 1) {
106 116
               this.is_open_xt_his = true
117
+
107 118
             }else{
108 119
               this.is_open_xt_his = false
109 120
             }
110 121
 
122
+            if(response.data.data.is_open_xt_his_project == 1) {
123
+              this.is_open_xt_his_project = true
124
+
125
+            }else{
126
+              this.is_open_xt_his_project = false
127
+            }
128
+
111 129
           } else {
112 130
             this.$message.error(response.data.msg)
113 131
           }
@@ -146,6 +164,38 @@ export default {
146 164
         )
147 165
       }
148 166
     },
167
+    changeFuncProject(val){
168
+      if(this.is_open_xt_his_project){
169
+        let params={
170
+          is_open:this.is_open_xt_his_project
171
+        }
172
+        postXtHisProjectIsOpen(params).then(
173
+          response => {
174
+            if (response.data.state === 1) {
175
+              this.is_open_xt_his_project = response.data.data.is_open
176
+
177
+            } else {
178
+              this.$message.error(response.data.msg)
179
+            }
180
+          }
181
+        )
182
+      }else{
183
+        let params={
184
+          is_open:this.is_open_xt_his_project
185
+        }
186
+        postXtHisProjectIsOpen(params).then(
187
+          response => {
188
+            if (response.data.state === 1) {
189
+              this.is_open_xt_his_project = response.data.data.is_open
190
+
191
+            } else {
192
+              this.$message.error(response.data.msg)
193
+            }
194
+          }
195
+        )
196
+      }
197
+    },
198
+
149 199
 
150 200
     changeFuncTwo(){
151 201
       console.log("3333333",this.is_open_monitor)
@@ -193,7 +243,7 @@ export default {
193 243
        }
194 244
       let params = {
195 245
          is_open:is_open,
196
-       } 
246
+       }
197 247
       addOrderConfig(params).then(response=>{
198 248
          if(response.data.state == 1){
199 249
            var config = response.data.data.config
@@ -224,11 +274,11 @@ export default {
224 274
       }
225 275
       if(val == false){
226 276
         is_open = 0
227
-      } 
277
+      }
228 278
       var params = {
229 279
         is_open:is_open,
230 280
       }
231
-     
281
+
232 282
       changeFuncPrint(params).then(response=>{
233 283
          if(response.data.state == 1){
234 284
            var dataPrint =  response.data.data.dataPrint

+ 46 - 2
src/xt_pages/data/components/addConsumable.vue Просмотреть файл

@@ -48,9 +48,53 @@
48 48
                                 </el-option>
49 49
                             </el-select>
50 50
                         </el-form-item>
51
-                        <el-form-item label="规格型号 : " prop="name" style="width:100%">
51
+                        <!-- <el-form-item label="规格型号 : " prop="name" style="width:100%">
52 52
                             <el-input v-model="form.specification_name" placeholder="" maxlength="30"></el-input>
53
-                        </el-form-item>
53
+                        </el-form-item> -->
54
+                       <div style="width:100%;">
55
+                          <div><span style="color:red;">*</span>单位&规格: <span style="color:#999">例如:0.75 g * 60 粒 / 盒</span></div>
56
+                        </div>
57
+                       <div style="width:100%;display:flex;align-items:center;">
58
+                            <el-form-item prop="dosage" class="noMargin">
59
+                              <el-input v-model="form.dosage" type="number" style="width:100px" placeholder="剂量" :disabled="dosageShow"></el-input>  
60
+                            </el-form-item>
61
+                            <el-form-item prop="max_unit" class="noMargin">
62
+                              <el-select v-model="form.max_unit" style="width:160px;" placeholder="剂量单位" @change="changeMaxUnit">
63
+                                <el-option
64
+                                  v-for="(item,index) in getDataConfig('hemodialysis','units')"
65
+                                  :key="index"
66
+                                  :label="item.name"
67
+                                  :value="item.name">
68
+                                </el-option>
69
+                            </el-select>
70
+                          </el-form-item>
71
+                            *
72
+                            <el-form-item prop="min_number" class="noMargin">
73
+                              <el-input v-model="form.min_number" style="width:100px" type="number" placeholder="拆零"> </el-input>
74
+                            </el-form-item>
75
+                            <el-form-item prop="min_unit" class="noMargin">
76
+                              <el-select v-model="form.min_unit" style="width:160px;"  placeholder="拆零单位"  @change="changeMinUnit">
77
+                                <el-option
78
+                                  v-for="(item,index) in getDataConfig('hemodialysis','units')"
79
+                                  :key="index"
80
+                                  :label="item.name"
81
+                                  :value="item.name">
82
+                                </el-option>
83
+                              </el-select>
84
+                          </el-form-item>
85
+                          /
86
+                          <el-form-item prop="packing_unit" class="noMargin">
87
+                            <el-select v-model="form.packing_unit" style="width:160px;" placeholder="包装单位">
88
+                              <el-option
89
+                                v-for="(item,index) in getDataConfig('hemodialysis','units')"
90
+                                :key="index"
91
+                                :label="item.name"
92
+                                :value="item.name">
93
+                              </el-option>
94
+                            </el-select>
95
+                          </el-form-item>
96
+                        </div>
97
+                       
54 98
                         <el-form-item label="生产厂商 : " prop="name" style="width:100%">
55 99
                             <el-select v-model="form.manufacturer" style="width:100%" placeholder="请选择">
56 100
                                 <el-option

+ 418 - 137
src/xt_pages/data/components/addDrugs.vue Просмотреть файл

@@ -9,31 +9,17 @@
9 9
         <el-tabs v-model="activeName">
10 10
             <el-tab-pane label="基础数据" name="first">
11 11
                 <div>
12
-                    <el-form :model="form" :rules="rules" ref="form" label-width="120px"
13
-                             style="display: flex;flex-wrap: wrap;justify-content: space-between;">
12
+                    <el-form :model="form" :rules="rules" ref="form" label-width="120px" style="display: flex;flex-wrap: wrap;justify-content: space-between;">
14 13
                         <el-form-item label="药品名称 : " prop="drug_name">
15 14
                             <el-input v-model="form.drug_name" style="width:160px;" placeholder=""
16 15
                                       maxlength="30"></el-input>
17 16
                         </el-form-item>
18
-                        <el-form-item label="拼音 : ">
19
-                            <el-input v-model="form.pinyin" style="width:160px;" placeholder=""
20
-                                      maxlength="30"></el-input>
21
-                        </el-form-item>
22
-                        <el-form-item label="五笔 : ">
23
-                            <el-input v-model="form.wubi" style="width:160px;" placeholder="" maxlength="30"></el-input>
24
-                        </el-form-item>
17
+
25 18
                         <el-form-item label="药品别名 : ">
26 19
                             <el-input v-model="form.drug_alias" style="width:160px;" placeholder=""
27 20
                                       maxlength="30"></el-input>
28 21
                         </el-form-item>
29
-                        <el-form-item label="别名拼音 : " prop="drug_alias_pinyin">
30
-                            <el-input v-model="form.drug_alias_pinyin" style="width:160px;" placeholder=""
31
-                                      maxlength="30"></el-input>
32
-                        </el-form-item>
33
-                        <el-form-item label="别名五笔 : " prop="drug_alias_wubi">
34
-                            <el-input v-model="form.drug_alias_wubi" style="width:160px;" placeholder=""
35
-                                      maxlength="30"></el-input>
36
-                        </el-form-item>
22
+
37 23
                         <el-form-item label="药品类别 : " prop="drug_category">
38 24
                             <el-select v-model="form.drug_category" style="width:160px;" placeholder="请选择">
39 25
                                 <el-option
@@ -44,10 +30,51 @@
44 30
                                 </el-option>
45 31
                             </el-select>
46 32
                         </el-form-item>
47
-                        <el-form-item label="药品规格 : " prop="drug_spec">
48
-                            <el-input v-model="form.drug_spec" style="width:160px;" placeholder=""
49
-                                      maxlength="30"></el-input>
50
-                        </el-form-item>
33
+                        <div style="width:100%;">
34
+                          <div><span style="width:120px;text-align:right;display:inline-block;margin-bottom:10px;"><span style="color:red;">*</span>单位&规格:</span><span style="color:#999">例如:0.75 g * 60 粒 / 盒</span></div>
35
+                        </div>
36
+                        <div style="width:100%;display:flex;align-items:center;margin-left:120px;">
37
+                            <el-form-item prop="dose" class="noMargin">
38
+                              <el-input v-model="form.dose" type="number" style="width:100px;margin-right:5px;" placeholder="剂量" :disabled="dosageShow"></el-input>
39
+                            </el-form-item>
40
+                            <el-form-item prop="dose_unit" class="noMargin">
41
+                              <el-select v-model="form.dose_unit" style="width:160px;" placeholder="剂量单位" @change="changeDoseUnit">
42
+                                <el-option
43
+                                  v-for="(item,index) in getDataConfig('hemodialysis','units')"
44
+                                  :key="index"
45
+                                  :label="item.name"
46
+                                  :value="item.name">
47
+                                </el-option>
48
+                              </el-select>
49
+                            </el-form-item>
50
+                            <span style="margin-bottom:20px;font-size:20px;padding:0 10px;">*</span>
51
+                            <el-form-item prop="min_number" class="noMargin">
52
+                              <el-input v-model="form.min_number" style="width:100px;margin-right:5px;" :disabled="minNumberShow" type="number" placeholder="拆零"> </el-input>
53
+                            </el-form-item>
54
+                            <el-form-item prop="min_unit" class="noMargin">
55
+                              <el-select v-model="form.min_unit" style="width:160px;"  placeholder="拆零单位"  @change="changeMinUnit">
56
+                                <el-option
57
+                                  v-for="(item,index) in getDataConfig('hemodialysis','units')"
58
+                                  :key="index"
59
+                                  :label="item.name"
60
+                                  :value="item.name">
61
+                                </el-option>
62
+                              </el-select>
63
+                            </el-form-item>
64
+                          <span style="margin-bottom:20px;font-size:20px;padding:0 10px;">/</span>
65
+                          <el-form-item prop="max_unit" class="noMargin">
66
+                            <el-select v-model="form.max_unit" style="width:160px;" placeholder="包装单位" @change="changeMaxUnit">
67
+                              <el-option
68
+                                v-for="(item,index) in getDataConfig('hemodialysis','units')"
69
+                                :key="index"
70
+                                :label="item.name"
71
+                                :value="item.name">
72
+                              </el-option>
73
+                            </el-select>
74
+                          </el-form-item>
75
+                        </div>
76
+
77
+
51 78
                         <el-form-item label="药品类型 : " prop="drug_type">
52 79
                             <el-select v-model="form.drug_type" style="width:160px;" placeholder="请选择">
53 80
                                 <el-option
@@ -58,7 +85,67 @@
58 85
                                 </el-option>
59 86
                             </el-select>
60 87
                         </el-form-item>
61
-                        <el-form-item label="库存警戒:" prop="drug_stock_limit">
88
+
89
+                      <el-form-item label="默认给药途径:" prop="delivery_way">
90
+                        <el-select v-model="form.delivery_way" style="width:160px;" placeholder="请选择">
91
+                            <el-option
92
+                                    v-for="(item, index) in deliveryWayOptions"
93
+                                    :key="index"
94
+                                    :label="item.name"
95
+                                    :value="item.name">
96
+                            </el-option>
97
+                        </el-select>
98
+                    </el-form-item>
99
+                    <el-form-item label="默认执行频率:" prop="execution_frequency">
100
+                        <el-select v-model="form.execution_frequency" style="width:160px;" placeholder="请选择">
101
+                            <el-option
102
+                                    v-for="(item,index) in executionFrequencyOptions"
103
+                                    :key="index"
104
+                                    :label="item.name"
105
+                                    :value="item.name">
106
+                            </el-option>
107
+                        </el-select>
108
+                    </el-form-item>
109
+
110
+                    <el-form-item label="默认单次用量 : " prop="drug_dose">
111
+                         <el-input v-model="form.drug_dose" style="width:70px;margin-right:5px;" placeholder=""
112
+                                      maxlength="30"></el-input>
113
+                          <el-select v-model="form.drug_dose_unit" style="width:80px;" placeholder="单次用量单位">
114
+                                <el-option
115
+                                        v-for="(item,index) in unitList"
116
+                                        :key="index"
117
+                                        :label="item.name"
118
+                                        :value="item.id">
119
+                                </el-option>
120
+                           </el-select>
121
+                     </el-form-item>
122
+                    <el-form-item label="默认开药数量:" prop="prescribing_number">
123
+                        <el-input v-model="form.prescribing_number" style="width:70px;margin-right:5px;" placeholder=""
124
+                                  maxlength="30"></el-input>
125
+                        <el-select v-model="form.prescribing_number_unit" style="width:80px;" placeholder="开药数量单位">
126
+                              <el-option
127
+                                v-for="(item,index) in packingUnit"
128
+                                :key="index"
129
+                                :label="item.name"
130
+                                :value="item.name">
131
+                              </el-option>
132
+                          </el-select>
133
+                    </el-form-item>
134
+                     <!-- <el-form-item label="开药数量单位:" prop="prescribing_number">
135
+                          <el-select v-model="form.prescribing_number_unit" style="width:160px;" placeholder="开药数量单位">
136
+                              <el-option
137
+                                v-for="(item,index) in getDataConfig('hemodialysis','units')"
138
+                                :key="index"
139
+                                :label="item.name"
140
+                                :value="item.name">
141
+                              </el-option>
142
+                          </el-select>
143
+                    </el-form-item> -->
144
+                    <el-form-item label="默认开药天数:" prop="prescribing_number">
145
+                        <el-input v-model="form.drug_day" style="width:160px;" placeholder=""
146
+                                  maxlength="30"></el-input>
147
+                    </el-form-item>
148
+                       <el-form-item label="库存警戒:" prop="drug_stock_limit">
62 149
                             <el-input v-model="form.drug_stock_limit" style="width:160px;" placeholder=""
63 150
                                       maxlength="30"></el-input>
64 151
                         </el-form-item>
@@ -86,35 +173,20 @@
86 173
                                 </el-option>
87 174
                             </el-select>
88 175
                         </el-form-item>
89
-                        <el-form-item label="最大单位 : " prop="max_unit">
90
-                            <el-select v-model="form.max_unit" style="width:160px;" placeholder="请选择">
91
-                                <el-option
92
-                                        v-for="item,index in getDataConfig('hemodialysis','units')"
93
-                                        :key="index"
94
-                                        :label="item.name"
95
-                                        :value="item.name">
96
-                                </el-option>
97
-                            </el-select>
98
-                        </el-form-item>
99
-                        <el-form-item label="最小单位 : " prop="min_unit">
100
-                            <el-select v-model="form.min_unit" style="width:160px;" placeholder="请选择">
101
-                                <el-option
102
-                                        v-for="item,index in getDataConfig('hemodialysis','units')"
103
-                                        :key="index"
104
-                                        :label="item.name"
105
-                                        :value="item.name">
106
-                                </el-option>
107
-                            </el-select>
108
-                        </el-form-item>
109
-                        <el-form-item label="单位换算 : ">
176
+
177
+                        <!-- <el-form-item label="单位换算 : ">
110 178
                             <el-input v-model="form.unit_matrixing" style="width:160px;" placeholder=""
111 179
                                       maxlength="30"></el-input>
180
+                        </el-form-item> -->
181
+                        <el-form-item label="拆零零售价(元) : " prop="min_price">
182
+                            <el-input v-model="form.min_price" style="width:160px;" placeholder=""
183
+                                      maxlength="30"></el-input>
112 184
                         </el-form-item>
113
-                        <el-form-item label="零售价(元) : " prop="retail_price">
114
-                            <el-input v-model="form.retail_price" style="width:160px;" placeholder=""
185
+                        <el-form-item label="包装零售价(元) : " prop="retail_price">
186
+                          <el-input v-model="form.retail_price" style="width:160px;" placeholder=""
115 187
                                       maxlength="30"></el-input>
116 188
                         </el-form-item>
117
-                        <el-form-item label="上次进价(元) : " prop="last_price">
189
+                        <el-form-item label="进货价(元) : " prop="last_price">
118 190
                             <el-input v-model="form.last_price" style="width:160px;" placeholder=""
119 191
                                       maxlength="30"></el-input>
120 192
                         </el-form-item>
@@ -142,24 +214,13 @@
142 214
                                 </el-option>
143 215
                             </el-select>
144 216
                         </el-form-item>
145
-                        <el-form-item label="剂量 : " prop="drug_dose">
146
-                            <el-input v-model="form.drug_dose" style="width:70px;margin-right:5px;" placeholder=""
147
-                                      maxlength="30"></el-input>
148
-                            <el-select v-model="form.drug_dose_unit" style="width:80px;" placeholder="请选择">
149
-                                <el-option
150
-                                        v-for="item,index in getDataConfig('hemodialysis','units')"
151
-                                        :key="index"
152
-                                        :label="item.name"
153
-                                        :value="item.id">
154
-                                </el-option>
155
-                            </el-select>
156
-                        </el-form-item>
217
+
157 218
 
158 219
 
159 220
                         <el-form-item label="限制性用药 : ">
160 221
                             <el-select v-model="form.lmt_used_flag" style="width:160px;" placeholder="请选择">
161 222
                                 <el-option
162
-                                        v-for="item,index in lmt_used_flags"
223
+                                        v-for="(item,index) in lmt_used_flags"
163 224
                                         :key="index"
164 225
                                         :label="item.name"
165 226
                                         :value="item.id">
@@ -171,7 +232,7 @@
171 232
                         <el-form-item label="审批标志 : ">
172 233
                             <el-select v-model="form.hosp_appr_flag" style="width:160px;" placeholder="请选择">
173 234
                                 <el-option
174
-                                        v-for="item,index in hosp_appr_flags"
235
+                                        v-for="(item,index) in hosp_appr_flags"
175 236
                                         :key="index"
176 237
                                         :label="item.name"
177 238
                                         :value="item.id">
@@ -185,14 +246,6 @@
185 246
                                       maxlength="30"></el-input>
186 247
                         </el-form-item>
187 248
                         <el-form-item label="生产厂商 : " prop="manufacturer">
188
-                            <!-- <el-select v-model="form.manufacturer" style="width:160px;" placeholder="请选择">
189
-                              <el-option
190
-                                v-for="item,index in manufacturers"
191
-                                :key="index"
192
-                                :label="item.manufacturer_name"
193
-                                :value="item.id">
194
-                              </el-option>
195
-                            </el-select> -->
196 249
 
197 250
                             <el-select v-model="form.manufacturer" style="width:160px;" filterable placeholder="请选择">
198 251
                                 <el-option
@@ -230,7 +283,7 @@
230 283
                         <el-form-item label="是否特病目录:" prop="is_special_diseases">
231 284
                             <el-select v-model="form.is_special_diseases" style="width:160px;" placeholder="请选择">
232 285
                                 <el-option
233
-                                        v-for="item,index in options"
286
+                                        v-for="(item,index) in options"
234 287
                                         :key="index"
235 288
                                         :label="item.label"
236 289
                                         :value="item.value">
@@ -240,7 +293,7 @@
240 293
                         <el-form-item label="是否备案 : " prop="is_record">
241 294
                             <el-select v-model="form.is_record" style="width:160px;" placeholder="请选择">
242 295
                                 <el-option
243
-                                        v-for="item,index in options"
296
+                                        v-for="(item,index) in options"
244 297
                                         :key="index"
245 298
                                         :label="item.label"
246 299
                                         :value="item.value">
@@ -251,7 +304,7 @@
251 304
                         <el-form-item label="处方药标志">
252 305
                             <el-select v-model="form.prescription_mark" style="width:160px;" placeholder="请选择">
253 306
                                 <el-option
254
-                                        v-for="item,index in options"
307
+                                        v-for="(item,index) in options"
255 308
                                         :key="index"
256 309
                                         :label="item.label"
257 310
                                         :value="item.value">
@@ -260,11 +313,14 @@
260 313
                         </el-form-item>
261 314
 
262 315
                         <el-form-item label="社保目录编码">
263
-                            <el-input v-model="form.social_security_directory_code" style="width:180px"></el-input>
316
+                            <el-input v-model="form.social_security_directory_code" style="width:160px"></el-input>
264 317
                         </el-form-item>
265 318
 
319
+
320
+
266 321
                         <el-form-item label="备案日期:">
267 322
                             <el-date-picker
323
+                                    style="width:160px"
268 324
                                     value-format="yyyy-MM-dd"
269 325
                                     v-model="form.record_date"
270 326
                                     type="date"
@@ -273,11 +329,8 @@
273 329
                         </el-form-item>
274 330
 
275 331
                         <el-form-item label="药品备注:">
276
-                            <el-input v-model="form.drug_remark" style="width:180px"></el-input>
332
+                            <el-input v-model="form.drug_remark" style="width:160px"></el-input>
277 333
                         </el-form-item>
278
-                        <!-- <el-form-item label="代理商 : " prop="agent">
279
-                          <el-input v-model="form.agent" style="width:160px;" placeholder="" maxlength="30"></el-input>
280
-                        </el-form-item> -->
281 334
 
282 335
                         <el-form-item label="经销商: " style="width:100%">
283 336
 
@@ -314,38 +367,11 @@
314 367
             <el-tab-pane label="扩展数据" name="second">
315 368
                 <el-form :model="form" label-width="120px"
316 369
                          style="display: flex;flex-wrap: wrap;justify-content: space-between;">
317
-                    <el-form-item label="默认给药途径:" prop="delivery_way">
318
-                        <el-select v-model="form.delivery_way" style="width:160px;" placeholder="请选择">
319
-                            <el-option
320
-                                    v-for="item, index in deliveryWayOptions"
321
-                                    :key="index"
322
-                                    :label="item.name"
323
-                                    :value="item.name">
324
-                            </el-option>
325
-                        </el-select>
326
-                    </el-form-item>
327
-                    <el-form-item label="默认执行频率:" prop="execution_frequency">
328
-                        <el-select v-model="form.execution_frequency" style="width:160px;" placeholder="请选择">
329
-                            <el-option
330
-                                    v-for="item,index in executionFrequencyOptions"
331
-                                    :key="index"
332
-                                    :label="item.name"
333
-                                    :value="item.name">
334
-                            </el-option>
335
-                        </el-select>
336
-                    </el-form-item>
337
-                    <el-form-item label="默认单次用量:" prop="single_dose">
338
-                        <el-input v-model="form.single_dose" style="width:160px;" placeholder=""
339
-                                  maxlength="30"></el-input>
340
-                    </el-form-item>
341
-                    <el-form-item label="默认开药数量:" prop="prescribing_number">
342
-                        <el-input v-model="form.prescribing_number" style="width:160px;" placeholder=""
343
-                                  maxlength="30"></el-input>
344
-                    </el-form-item>
370
+
345 371
                     <el-form-item label="标签:" prop="label">
346 372
                         <el-select v-model="form.label" style="width:160px;" placeholder="请选择">
347 373
                             <el-option
348
-                                    v-for="item,index in sign"
374
+                                    v-for="(item,index) in sign"
349 375
                                     :key="index"
350 376
                                     :label="item.name"
351 377
                                     :value="item.id">
@@ -358,7 +384,7 @@
358 384
                     <el-form-item label="是否常用医嘱:" prop="is_use_doctor_advice">
359 385
                         <el-select v-model="form.is_use_doctor_advice" style="width:160px;" placeholder="请选择">
360 386
                             <el-option
361
-                                    v-for="item,index in options"
387
+                                    v-for="(item,index) in options"
362 388
                                     :key="index"
363 389
                                     :label="item.label"
364 390
                                     :value="item.value">
@@ -368,7 +394,7 @@
368 394
                     <el-form-item label="是否默认:" prop="is_default">
369 395
                         <el-select v-model="form.is_default" style="width:160px;" placeholder="请选择">
370 396
                             <el-option
371
-                                    v-for="item,index in options"
397
+                                    v-for="(item,index) in options"
372 398
                                     :key="index"
373 399
                                     :label="item.label"
374 400
                                     :value="item.value">
@@ -520,23 +546,37 @@
520 546
           prescription_mark: '',//处方药标志
521 547
           social_security_directory_code: '',//社保目录编码
522 548
           record_date: '',//备案日期
523
-          drug_remark: ''//药品备注
549
+          drug_remark: '',//药品备注
550
+          drug_day:"",//默认开药天数
551
+          min_number:"",//拆零数量
552
+          min_price:"",//拆零零售价
553
+          dose_unit:"",//剂量
554
+          dose:"",//剂量单位
555
+          prescribing_number_unit:"",
556
+          total:"",
524 557
         },
525 558
 
526 559
         rules: {
527 560
           drug_name: [{ required: true, message: '请填写药品名称', trigger: 'blur' }],
528 561
           drug_alias: [{ required: true, message: '请选择药品类别', trigger: 'change' }],
529
-          drug_spec: [{ required: true, message: '请填写药品规格', trigger: 'blur' }],
562
+          // drug_spec: [{ required: true, message: '请填写药品规格', trigger: 'blur' }],
563
+          dose:[{required:true,message:'请输入剂量',trigger:'blur'}],
564
+          dose_unit:[{required:true,message:"请填写剂量",trigger:'blur'}],
565
+          max_unit: [{ required: true, message: '请填写包装单位', trigger: 'change' }],
566
+          min_unit: [{ required: true, message: '请填写拆零单位', trigger: 'change' }],
567
+          unval:[{required:true,message:"请填写拆零",trigger:'change'}],
568
+          min_number:[{required:true,message:"请填写拆零",trigger:'change'}],
569
+          packing_unit: [{ required: true, message: '请填写包装单位', trigger: 'change' }],
530 570
           drug_type: [{ required: true, message: '请填写药品类型', trigger: 'blur' }],
531 571
           drug_stock_limit: [{ required: true, message: '请填写库存警戒', trigger: 'blur' }],
532 572
           drug_origin_place: [{ required: true, message: '请填写产地', trigger: 'blur' }],
533 573
           drug_dosage_form: [{ required: true, message: '请填写药品剂型', trigger: 'blur' }],
534 574
           medical_insurance_level: [{ required: true, message: '请选择医保等级', trigger: 'change' }],
535
-          max_unit: [{ required: true, message: '请填写最大单位', trigger: 'change' }],
536
-          min_unit: [{ required: true, message: '请填写最小单位', trigger: 'change' }],
575
+
537 576
           unit_matrixing: [{ required: true, message: '请填写单位换算', trigger: 'blur' }],
538
-          retail_price: [{ required: true, message: '请填写零售价', trigger: 'blur' }],
539
-          last_price: [{ required: true, message: '请填写上次进价', trigger: 'blur' }],
577
+          retail_price: [{ required: true, message: '请填写拆零零售价', trigger: 'blur' }],
578
+          last_price: [{ required: true, message: '请填写进货价', trigger: 'blur' }],
579
+          packing_price:[{required:true,message:'请填写包装零售价',trigger:'blur'}],
540 580
           drug_classify: [{ required: true, message: '请选择药物分类', trigger: 'change' }],
541 581
           drug_dose: [{ required: true, message: '请填写剂量', trigger: 'blur' }],
542 582
           manufacturer: [{ required: true, message: '请选择生产产商', trigger: 'change' }],
@@ -560,7 +600,11 @@
560 600
         drugControlList:[],
561 601
         drugClassifyList:[],
562 602
         statisticsCategoryList:[],
563
-        pharmacologyCategoryList:[]
603
+        pharmacologyCategoryList:[],
604
+        dosageShow:false,
605
+        unitList:[],
606
+        minNumberShow:false,
607
+        packingUnit:[]
564 608
       }
565 609
     },
566 610
     props: {
@@ -578,7 +622,7 @@
578 622
         type: Number,
579 623
         default: 1
580 624
       },
581
-     
625
+
582 626
 
583 627
     },
584 628
     methods: {
@@ -589,7 +633,7 @@
589 633
         this.$refs[formName].validate((valid) => {
590 634
           console.log(valid)
591 635
           if (valid) {
592
-            console.log(1111,this.getValue())
636
+            // console.log(1111,this.getValue())
593 637
             this.$emit('dialog-comfirm', this.getValue())
594 638
           }
595 639
         })
@@ -619,15 +663,67 @@
619 663
         this.form.intro = ''
620 664
       },
621 665
       show(id, obj) {
622
-        console.log("obj333333333",obj)
666
+        this.unitList = []
667
+        this.packingUnit = []
668
+        var arr =  getDataConfig('hemodialysis','units')
669
+        for(let i=0;i<arr.length;i++){
670
+          if(obj.min_unit == arr[i].name){
671
+            this.unitList.push(arr[i])
672
+            this.packingUnit.push(arr[i])
673
+          }
674
+          if(obj.dose_unit == arr[i].name){
675
+            this.unitList.push(arr[i])
676
+          }
677
+          if(obj.max_unit == arr[i].name){
678
+            this.packingUnit.push(arr[i])
679
+          } 
680
+
681
+          let idArr = []
682
+          this.unitList.map(item => {
683
+            idArr.push(item.id)
684
+          })
685
+          if(idArr.indexOf(obj.drug_dose_unit) == -1){
686
+            if(obj.drug_dose_unit == arr[i].id){
687
+              this.unitList.push(arr[i])
688
+            }
689
+          }
690
+          let packingIdArr = []
691
+          this.packingUnit.map(item => {
692
+            packingIdArr.push(item.id)
693
+          })
694
+          if(packingIdArr.indexOf(obj.prescribing_number_unit) == -1){
695
+            if(obj.prescribing_number_unit == arr[i].id || obj.prescribing_number_unit == arr[i].name){
696
+              this.packingUnit.push(arr[i])
697
+            }
698
+          }
699
+        }
700
+        let ojb = {};
701
+        this.unitList = this.unitList.reduce(function(prevArr, currentItem) {
702
+          //利用对象的键名无法重复的特点,mch_id是唯一区别的属性值
703
+          ojb[currentItem.name] ? '' : ojb[currentItem.name] = true && prevArr.push(currentItem);
704
+          return prevArr
705
+        }, [])
706
+
707
+        let newojb = {};
708
+        this.packingUnit = this.packingUnit.reduce(function(prevArr, currentItem) {
709
+          //利用对象的键名无法重复的特点,mch_id是唯一区别的属性值
710
+          newojb[currentItem.name] ? '' : newojb[currentItem.name] = true && prevArr.push(currentItem);
711
+          return prevArr
712
+        }, [])
713
+        console.log('this.unitList',this.unitList)
623 714
         this.getInitializtion()
624 715
         this.getlist()
625 716
         this.GetAllConfig()
626
-        obj.drug_classify = parseInt(obj.drug_classify)
717
+        if(obj.drug_classify == 0){
718
+           obj.drug_classify = ""
719
+        }else{
720
+          obj.drug_classify = parseInt(obj.drug_classify)
721
+        }
722
+
627 723
         if(obj.dealer == 0){
628 724
            obj.dealer = ""
629 725
         }
630
-        
726
+
631 727
         this.visible = true
632 728
         if (id == 0) {
633 729
           this.formTitle = '新增'
@@ -654,6 +750,24 @@
654 750
           }
655 751
 
656 752
           this.formTitle = '编辑'
753
+          let unitArr = []
754
+          this.unitList.map(item => {
755
+            unitArr.push(item.id)
756
+          })
757
+          if(unitArr.indexOf(this.form.drug_dose_unit) == -1){
758
+            this.form.drug_dose_unit = ''
759
+          }
760
+          if(obj.dose_unit == obj.min_unit){
761
+            this.dosageShow = true
762
+          }else{
763
+            this.dosageShow = false
764
+          }
765
+
766
+          if(obj.min_unit == obj.max_unit){
767
+            this.minNumberShow = true
768
+          }else{
769
+            this.minNumberShow = false
770
+          }
657 771
 
658 772
         }
659 773
         this.getAdviceConfig()
@@ -679,7 +793,14 @@
679 793
         this.form.prescription_mark = ''
680 794
         this.form.record_date = ''
681 795
         this.form.drug_remark = ''
682
-
796
+        this.form.dose = ''
797
+        this.form.dose_unit = ""
798
+        this.form.min_number= ""
799
+        this.form.min_unit = ""
800
+        this.form.max_unit = ""
801
+        this.form.min_price = ""
802
+        this.form.prescribing_number_unit = ""
803
+        this.dosageShow = false
683 804
         this.visible = false
684 805
       },
685 806
       getValue: function() {
@@ -735,10 +856,15 @@
735 856
         form['social_security_directory_code'] = this.form.social_security_directory_code
736 857
         form['record_date'] = this.form.record_date
737 858
         form['drug_remark'] = this.form.drug_remark
738
-
739 859
         form['hosp_appr_flag'] = this.form.hosp_appr_flag
740 860
         form['lmt_used_flag'] = this.form.lmt_used_flag
741
-       
861
+        form['total'] = this.form.total
862
+        form['min_number'] = this.form.min_number
863
+        form["drug_day"] = this.form.drug_day
864
+        form['dose'] = this.form.dose,
865
+        form['dose_unit'] = this.form.dose_unit
866
+        form['min_price'] = this.form.min_price
867
+        form['prescribing_number_unit'] = this.form.prescribing_number_unit
742 868
         return form
743 869
       },
744 870
       getlist() {
@@ -749,7 +875,7 @@
749 875
 
750 876
         getManufacturerList(params).then(response => {
751 877
           var manufacturerList = response.data.data.manufacturer
752
-         
878
+
753 879
           this.manufacturerList = manufacturerList
754 880
         })
755 881
       },
@@ -768,31 +894,181 @@
768 894
         getInitializtion().then(response=>{
769 895
            if(response.data.state ==1){
770 896
              var drugCategoryList =  response.data.data.drugCategoryList
771
-             console.log("药品类别",drugCategoryList) 
897
+
772 898
              this.drugCategoryList = drugCategoryList
773 899
              var drugTypeList = response.data.data.drugTypeList
774
-              console.log("药物分类",drugTypeList)
900
+
775 901
               this.drugTypeList = drugTypeList
776 902
              var drugDosageFormList =  response.data.data.drugDosageFormList
777
-             console.log("药品剂型",drugDosageFormList) 
903
+
778 904
              this.drugDosageFormList = drugDosageFormList
779 905
              var medicalInsuranceLevelList =  response.data.data.medicalInsuranceLevelList
780
-             console.log("医保等级",medicalInsuranceLevelList)
906
+
781 907
              this.medicalInsuranceLevelList = medicalInsuranceLevelList
782 908
              var drugControlList = response.data.data.drugControlList
783
-             console.log("开药控制",drugControlList)
909
+
784 910
              this.drugControlList = drugControlList
785 911
              var drugClassifyList = response.data.data.drugClassifyList
786
-             console.log("药物分类",drugClassifyList)
912
+
787 913
              this.drugClassifyList = drugClassifyList
788 914
              var statisticsCategoryList =  response.data.data.statisticsCategoryList
789
-             console.log("统计分类",statisticsCategoryList)
915
+
790 916
              this.statisticsCategoryList = statisticsCategoryList
791 917
              var pharmacologyCategoryList = response.data.data.pharmacologyCategoryList
792
-             console.log("药理分类",pharmacologyCategoryList)
918
+
793 919
              this.pharmacologyCategoryList = pharmacologyCategoryList
794 920
            }
795 921
         })
922
+      },
923
+      changeDoseUnit(val){
924
+        if(val == this.form.min_unit){
925
+          // this.form.dose = 1
926
+          this.form.min_number = 1
927
+          this.dosageShow = true
928
+        }
929
+        if(val !=this.form.min_unit){
930
+          this.dosageShow = false
931
+        }
932
+        var arr =  getDataConfig('hemodialysis','units')
933
+        this.unitList = []
934
+        for(let i=0;i<arr.length;i++){
935
+
936
+          if(this.form.min_unit == arr[i].name){
937
+            this.unitList.push(arr[i])
938
+          }
939
+          if(val == arr[i].name){
940
+            this.unitList.push(arr[i])
941
+          }
942
+          let idArr = []
943
+          this.unitList.map(item => {
944
+            idArr.push(item.id)
945
+          })
946
+          if(idArr.indexOf(this.form.drug_dose_unit) == -1){
947
+            if(this.form.drug_dose_unit == arr[i].id){
948
+              this.unitList.push(arr[i])
949
+            }
950
+          }
951
+
952
+        }
953
+        let ojb = {};
954
+        this.unitList = this.unitList.reduce(function(prevArr, currentItem) {
955
+            //利用对象的键名无法重复的特点,mch_id是唯一区别的属性值
956
+            ojb[currentItem.name] ? '' : ojb[currentItem.name] = true && prevArr.push(currentItem);
957
+            return prevArr
958
+        }, [])
959
+
960
+      },
961
+      changeMinUnit(val){
962
+        if(val == this.form.dose_unit){
963
+          // this.form.dose = 1
964
+          this.form.min_number = 1
965
+          this.dosageShow = true
966
+        }else{
967
+          this.dosageShow = false
968
+        }
969
+        // if(val != this.form.max_unit){
970
+        //   this.dosageShow = false
971
+        // }
972
+        if(val == this.form.max_unit){
973
+          this.form.min_number = 1
974
+          this.minNumberShow = true
975
+        }else{
976
+          this.minNumberShow = false
977
+        }
978
+
979
+        // if(this.form.dosage == "" || this.form.max_unit == ""){
980
+        //    this.form.min_number = 1
981
+        // }
982
+        var arr = getDataConfig('hemodialysis','units')
983
+        this.unitList = []
984
+        this.packingUnit = []
985
+        for(let i=0;i<arr.length;i++){
986
+            if(val == arr[i].name){
987
+              this.unitList.push(arr[i])
988
+              this.packingUnit.push(arr[i])
989
+            }
990
+            if(this.form.max_unit == arr[i].name){
991
+              this.unitList.push(arr[i])
992
+              this.packingUnit.push(arr[i])
993
+            }
994
+            if(this.form.drug_dose_unit == arr[i].id){
995
+              this.unitList.push(arr[i])
996
+            }
997
+            if(this.form.prescribing_number_unit == arr[i].id){
998
+              this.packingUnit.push(arr[i])
999
+            }
1000
+            
1001
+
1002
+
1003
+
1004
+            let idArr = []
1005
+            this.unitList.map(item => {
1006
+              idArr.push(item.id)
1007
+            })
1008
+            if(idArr.indexOf(this.form.drug_dose_unit) == -1){
1009
+              if(this.form.drug_dose_unit == arr[i].id){
1010
+                this.unitList.push(arr[i])
1011
+              }
1012
+            }
1013
+            let packingIdArr = []
1014
+            this.packingUnit.map(item => {
1015
+              packingIdArr.push(item.id)
1016
+            })
1017
+            if(packingIdArr.indexOf(this.form.prescribing_number_unit) == -1){
1018
+              if(this.form.prescribing_number_unit == arr[i].id){
1019
+                this.packingUnit.push(arr[i])
1020
+              }
1021
+            }
1022
+        }
1023
+        let ojb = {};
1024
+        this.unitList = this.unitList.reduce(function(prevArr, currentItem) {
1025
+          //利用对象的键名无法重复的特点,mch_id是唯一区别的属性值
1026
+          ojb[currentItem.name] ? '' : ojb[currentItem.name] = true && prevArr.push(currentItem);
1027
+          return prevArr
1028
+        }, [])
1029
+
1030
+        let newojb = {};
1031
+        this.packingUnit = this.packingUnit.reduce(function(prevArr, currentItem) {
1032
+          //利用对象的键名无法重复的特点,mch_id是唯一区别的属性值
1033
+          newojb[currentItem.name] ? '' : newojb[currentItem.name] = true && prevArr.push(currentItem);
1034
+          return prevArr
1035
+        }, [])
1036
+
1037
+      },
1038
+      changeMaxUnit(val){
1039
+        if(val == this.form.min_unit){
1040
+          this.form.min_number = 1
1041
+          this.minNumberShow = true
1042
+        }else{
1043
+          this.minNumberShow = false
1044
+        }
1045
+        var arr = getDataConfig('hemodialysis','units')
1046
+        this.packingUnit = []
1047
+        for(let i=0;i<arr.length;i++){
1048
+            if(val == arr[i].name){
1049
+              this.packingUnit.push(arr[i])
1050
+            }
1051
+            if(this.form.min_unit == arr[i].name){
1052
+              this.packingUnit.push(arr[i])
1053
+            }
1054
+            let packingIdArr = []
1055
+            this.packingUnit.map(item => {
1056
+              packingIdArr.push(item.id)
1057
+            })
1058
+            if(packingIdArr.indexOf(this.form.prescribing_number_unit) == -1){
1059
+              if(this.form.prescribing_number_unit == arr[i].id){
1060
+                this.packingUnit.push(arr[i])
1061
+              }
1062
+            }
1063
+        }
1064
+
1065
+
1066
+        let newojb = {};
1067
+        this.packingUnit = this.packingUnit.reduce(function(prevArr, currentItem) {
1068
+          //利用对象的键名无法重复的特点,mch_id是唯一区别的属性值
1069
+          newojb[currentItem.name] ? '' : newojb[currentItem.name] = true && prevArr.push(currentItem);
1070
+          return prevArr
1071
+        }, [])
796 1072
       }
797 1073
     }, watch: {
798 1074
       visible(val) {
@@ -805,9 +1081,9 @@
805 1081
        //获取所有经销商
806 1082
       this.GetAllConfig()
807 1083
       this.getlist()
808
-      
809
-      
810
-     
1084
+
1085
+
1086
+
811 1087
     }
812 1088
   }
813 1089
 </script>
@@ -815,9 +1091,14 @@
815 1091
 <style lang="scss">
816 1092
     .addDrugsDialog {
817 1093
 
818
-    .el-dialog__body {
819
-        padding-top: 0px;
820
-    }
1094
+      .el-dialog__body {
1095
+          padding-top: 0px;
1096
+      }
1097
+      .noMargin{
1098
+        .el-form-item__content{
1099
+          margin-left: 0 !important;
1100
+        }
1101
+      }
821 1102
 
822 1103
     }
823 1104
 </style>

+ 298 - 226
src/xt_pages/data/components/addInspection.vue Просмотреть файл

@@ -1,12 +1,13 @@
1 1
 <template>
2 2
     <el-dialog
3
-        :title="formTitle"
4
-        width="900px"
5
-        :visible.sync="visible"
6
-        :before-close="_close"
3
+            :title="formTitle"
4
+            width="900px"
5
+            :visible.sync="visible"
6
+            :before-close="_close"
7 7
     >
8 8
         <div>
9
-            <el-form :model="form" :rules="rules" ref="form" label-width="100px" style="display: flex;flex-wrap: wrap;justify-content: space-between;">
9
+            <el-form :model="form" :rules="rules" ref="form" label-width="100px"
10
+                     style="display: flex;flex-wrap: wrap;justify-content: space-between;">
10 11
                 <el-form-item label="组套名称 : " prop="project_team" style="width:100%">
11 12
                     <el-input v-model="form.project_team" placeholder="" maxlength="30"></el-input>
12 13
                 </el-form-item>
@@ -19,61 +20,65 @@
19 20
                 <el-form-item label="五笔 : " prop="wubi" style="width:50%">
20 21
                     <el-input v-model="form.wubi" placeholder="" maxlength="30"></el-input>
21 22
                 </el-form-item>
22
-                
23
+
23 24
                 <el-form-item label="试管颜色 : " prop="tube_color" style="width:50%">
24 25
                     <el-select v-model="form.tube_color" style="width:160px;" placeholder="请选择">
25 26
                         <el-option
26
-                         v-for="(item,index) in getDictionaryDataConfig('system','tube_color')"
27
-                         :key="index"
28
-                         :label="item.name"
29
-                         :value="item.id">
27
+                                v-for="(item,index) in getDictionaryDataConfig('system','tube_color')"
28
+                                :key="index"
29
+                                :label="item.name"
30
+                                :value="item.id">
30 31
                         </el-option>
31
-                  </el-select>
32
+                    </el-select>
32 33
                 </el-form-item>
33 34
                 <el-form-item label="组套类型 : " prop="team_type" style="width:50%">
34 35
                     <el-select v-model="form.team_type" style="width:100%;" placeholder="请选择">
35 36
                         <el-option
36
-                        v-for="item in options"
37
-                        :key="item.value"
38
-                        :label="item.label"
39
-                        :value="item.value">
37
+                                v-for="item in options"
38
+                                :key="item.value"
39
+                                :label="item.label"
40
+                                :value="item.value">
40 41
                         </el-option>
41 42
                     </el-select>
42 43
                 </el-form-item>
43 44
                 <el-form-item label="备注 : " prop="name" style="width:100%;">
44 45
                     <el-input type="textarea" :rows="2" placeholder="请输入内容" v-model="form.remark"></el-input>
45 46
                 </el-form-item>
46
-  
47
-                 <el-form-item label="组套明细" style="width:50%;">
48
-                    <el-select v-model="form.project_detail" placeholder="请选择">
47
+
48
+                <el-form-item label="组套明细" style="width:50%;">
49
+                    <el-select v-model="form.project_detail" filterable placeholder="请选择" @change="changeProject">
49 50
                         <el-option
50
-                        v-for="item in projectList"
51
-                        :key="item.id"
52
-                        :label="item.project_name"
53
-                        :value="item.id">
51
+                                v-for="item in projectList"
52
+                                :key="item.id"
53
+                                :label="item.project_name"
54
+                                :value="item.id">
54 55
                         </el-option>
55 56
                     </el-select>
57
+                </el-form-item>
56 58
 
57
-                    </el-form-item>
58
-                 <el-form-item label="数量" style="width:50%;"> 
59
-                      <div style="display:flex;"> 
60
-                         <el-input v-model="form.number" style="margin-right:10px;"></el-input>
61
-                         <el-button type="primary" @click="addProjectList">添加</el-button>
62
-                      </div>
63
-                  </el-form-item>
59
+                <el-form-item label="数量" style="width:50%;">
60
+                    <div style="display:flex;">
61
+                        <el-input v-model="form.number" style="margin-right:10px;"></el-input>
62
+                        <el-button type="primary" @click="addProjectList">添加</el-button>
63
+                    </div>
64
+                </el-form-item>
64 65
             </el-form>
65 66
             <el-form>
66
-                <el-table :data="tableData" border  style="100%" :row-style="{ color: '#303133' }" :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}" highlight-current-row ref="tab">
67
+                <el-table :data="tableData" border style="100%" :row-style="{ color: '#303133' }"
68
+                          :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"
69
+                          highlight-current-row ref="tab">
67 70
                     <el-table-column align="center" prop="name" label="分类" width="120">
68
-                        <template slot-scope="scope">{{getId(scope.row.statistical_classification)}}</template>
71
+                        <template slot-scope="scope">
72
+                            <div>{{scope.row.type == 2?getId(scope.row.statistical_classification):'耗材'}}</div>
73
+                        </template>
69 74
                     </el-table-column>
70 75
                     <el-table-column align="center" prop="name" label="组套明细" width="120">
71 76
                         <template slot-scope="scope">{{scope.row.project_name}}</template>
72 77
                     </el-table-column>
73
-                     <el-table-column align="center" prop="name" label="数量" width="120">
78
+                    <el-table-column align="center" prop="name" label="数量" width="120">
74 79
                         <template slot-scope="scope">{{scope.row.number}}</template>
75 80
                     </el-table-column>
76
-                     <el-table-column align="center" prop="name" label="单位" width="120">
81
+                    <el-table-column align="center" prop="name" label="单位" width="120">
77 82
                         <template slot-scope="scope">{{scope.row.unit}}</template>
78 83
                     </el-table-column>
79 84
                     <el-table-column align="center" prop="name" label="单价" width="120">
@@ -81,18 +86,18 @@
81 86
                     </el-table-column>
82 87
                     <el-table-column align="center" prop="name" label="操作">
83 88
                         <template slot-scope="scope">
84
-                          <el-tooltip
85
-                            class="item"
86
-                            effect="dark"
87
-                            content="删除"
88
-                            placement="top"
89
+                            <el-tooltip
90
+                                    class="item"
91
+                                    effect="dark"
92
+                                    content="删除"
93
+                                    placement="top"
89 94
                             >
90
-                            <el-button
91
-                                type="danger"
92
-                                icon="el-icon-delete"
93
-                                size="small"
94
-                                @click="DeleteProject(scope.row.id,scope.$index)"
95
-                            ></el-button>
95
+                                <el-button
96
+                                        type="danger"
97
+                                        icon="el-icon-delete"
98
+                                        size="small"
99
+                                        @click="DeleteProject(scope.row.id,scope.$index)"
100
+                                ></el-button>
96 101
                             </el-tooltip>
97 102
                         </template>
98 103
                     </el-table-column>
@@ -103,202 +108,269 @@
103 108
 
104 109
         <div slot="footer" class="dialog-footer">
105 110
             <el-button @click="hide">取 消</el-button>
106
-            <el-button type="primary"  @click="submitAction('form')">保 存</el-button>
111
+            <el-button type="primary" @click="submitAction('form')">保 存</el-button>
107 112
         </div>
108
-  </el-dialog>
113
+    </el-dialog>
109 114
 </template>
110 115
 
111 116
 <script>
112
-import { getDictionaryDataConfig,getDataConfig } from "@/utils/data";
113
-import { saveProjectTeam,getAllProjectList,addProjectList,DeleteProject,getProjectDetail } from "@/api/project/project"
114
-export default {
115
-    data(){
116
-        return{
117
-            visible:false,
118
-            formTitle:'',
119
-            activeName:'first',
120
-            form:{
121
-              project_team:'',
122
-              price:"",
123
-              pinyin:"",
124
-              wubi:"",
125
-              tube_color:"",
126
-              team_type:"",
127
-              remark:"",
128
-              project_detail:"",
129
-              number:""
130
-            },
131
-            options: [
132
-            {value: 1,label: '是'},
133
-            {value: 2,label: '否'}
134
-            ],
135
-            value: '',
136
-            radio:'1',
137
-            rules: {
138
-              project_team: [{ required: true, message: '请填写组套名称', trigger: 'blur'  }],
139
-            //   pinyin: [{ required: true, message: '请填写拼音' , trigger: 'blur' }],
140
-            //   wubi: [{ required: true, message: '请填写五笔' , trigger: 'blur' }],
141
-              price: [{ required: true, message: '请填写价格', trigger: 'change' }],
142
-              team_type: [{ required:true,message:'请填写组套类型',trigger:'change' }]
143
-           },
144
-           tableData:[],
145
-           projectList:[],
146
-           tabList:[],
147
-           itemList:[]
148
-        }
149
-    },
150
-    methods:{
151
-        getDataConfig(module, filed_name){
152
-            return getDataConfig(module, filed_name)
153
-        },
154
-            getDictionaryDataConfig(module, filed_name) {
155
-            return getDictionaryDataConfig(module, filed_name)
156
-        },
157
-        _close: function(done) {
158
-            done()
159
-        },
160
-        clear: function() {
161
-            this.form.id = 0;
162
-            this.form.name = "";
163
-            this.form.intro = "";
164
-        },
165
-        show(id) {
166
-            this.visible = true
167
-            this.formTitle = '新增' 
168
-         },
169
-        hide() {
170
-         this.visible = false
117
+  import { getDataConfig, getDictionaryDataConfig } from '@/utils/data'
118
+  import {
119
+    addProjectList,
120
+    DeleteProject,
121
+    getAllProjectList,
122
+    getProjectDetail,
123
+    saveProjectTeam
124
+  } from '@/api/project/project'
125
+
126
+  import { saveTeam } from '@/api/his/his'
127
+
128
+  export default {
129
+    data() {
130
+      return {
131
+        project_name: '',
132
+        visible: false,
133
+        formTitle: '',
134
+        activeName: 'first',
135
+        form: {
136
+          project_team: '',
137
+          price: 0,
138
+          pinyin: '',
139
+          wubi: '',
140
+          tube_color: '',
141
+          team_type: '',
142
+          remark: '',
143
+          project_detail: '',
144
+          number: '1'
171 145
         },
172
-        submitAction(formName){
173
-           this.$refs[formName].validate((valid)=>{
174
-                var arr = []
175
-                var listId = []
176
-                for(let i=0;i<this.tableData.length;i++){
177
-                    arr.push(this.tableData[i].id)
178
-                    
179
-                }
180
-                console.log("arr",arr)
181
-                console.log("table",this.tableData)
182
-                var ids = arr.join(",")
183
-                var listIds = this.itemList.join(",")
184
-                var params = {
185
-                 project_team:this.form.project_team,
186
-                 price:this.form.price,
187
-                 pinyin:this.form.pinyin,
188
-                 wubi:this.form.wubi,
189
-                 tube_color:this.form.tube_color,
190
-                 team_type:this.form.team_type,
191
-                 remark:this.form.remark,
192
-                 ids:ids,
193
-                 item_id:listIds
194
-               }
195
-              
196
-              saveProjectTeam(params).then(response=>{
197
-                 if(response.data.state == 1){
198
-                   var projectTeam = response.data.data.projectTeam
199
-                   console.log("projectTeam",projectTeam)
200
-                   this.$message.success("保存成功")  
201
-                   this.visible = false
202
-                   this.form.project_team = "",
203
-                   this.form.price = "",
204
-                   this.form.pinyin = "",
205
-                   this.form.wubi = "",
206
-                   this.form.tube_color = "",
207
-                   this.form.team_type = "",
208
-                   this.form.remark = ""
209
-                   this.tableData = []
210
-                   this.form.number = ""
211
-                   this.$parent.getlist()
212
-                 }else{
213
-                    this.$message.error("项目组套名称已存在!")
214
-                 }
215
-              }) 
216
-           })
146
+        options: [
147
+          { value: 1, label: '是' },
148
+          { value: 2, label: '否' }
149
+        ],
150
+        value: '',
151
+        radio: '1',
152
+        rules: {
153
+          project_team: [{ required: true, message: '请填写组套名称', trigger: 'blur' }],
154
+          //   pinyin: [{ required: true, message: '请填写拼音' , trigger: 'blur' }],
155
+          //   wubi: [{ required: true, message: '请填写五笔' , trigger: 'blur' }],
156
+          price: [{ required: true, message: '请填写价格', trigger: 'change' }],
157
+          team_type: [{ required: true, message: '请填写组套类型', trigger: 'change' }]
217 158
         },
218
-        getlist(){
219
-          getAllProjectList().then(response=>{
220
-             if(response.data.state == 1){
221
-               var projectList = response.data.data.projectList
222
-               console.log('projectlist33333',projectList)
223
-              
224
-               this.projectList = projectList
225
-            //    var hisprojectlist = response.data.data.hisprojectlist
226
-            //    console.log("hisprojectlist",hisprojectlist)
227
-            //    this.tableData = hisprojectlist
228
-             }
229
-          })   
230
-        },
231
-       
232
-        getId(id){
233
-          var name = ""
234
-          var statistics_category =  getDictionaryDataConfig('system','statistics_category') 
235
-          console.log("2235",statistics_category)
236
-          for(let i=0;i<statistics_category.length;i++){
237
-             if(id == statistics_category[i].id){
238
-                 name = statistics_category[i].name
239
-             }
159
+        tableData: [],
160
+        projectList: [],
161
+        tabList: [],
162
+        itemList: []
163
+      }
164
+    },
165
+    methods: {
166
+      changeProject() {
167
+        this.form.number = 1
168
+
169
+      },
170
+      querySearch(queryString, cb) {
171
+        var restaurants = this.projectList
172
+        var results = queryString ? restaurants.filter(this.createFilter(queryString)) : restaurants
173
+        // 调用 callback 返回建议列表的数据
174
+        cb(results)
175
+
176
+      }, createFilter(queryString) {
177
+        return (restaurant) => {
178
+          return (restaurant.project_name.toLowerCase().indexOf(queryString.toLowerCase()) === 0)
179
+        }
180
+      },
181
+      handleSelect(val) {
182
+        this.project_name = val.project_name
183
+        this.form.project_detail = val.id
184
+      },
185
+      getDataConfig(module, filed_name) {
186
+        return getDataConfig(module, filed_name)
187
+      },
188
+      getDictionaryDataConfig(module, filed_name) {
189
+        return getDictionaryDataConfig(module, filed_name)
190
+      },
191
+      _close: function(done) {
192
+        done()
193
+      },
194
+      clear: function() {
195
+        this.form.id = 0
196
+        this.form.name = ''
197
+        this.form.intro = ''
198
+      },
199
+      show(id) {
200
+        this.visible = true
201
+        this.formTitle = '新增'
202
+      },
203
+      hide() {
204
+        this.visible = false
205
+      },
206
+      submitAction(formName) {
207
+        this.$refs[formName].validate((valid) => {
208
+          var params = {
209
+            project_team: this.form.project_team,
210
+            price: this.form.price,
211
+            pinyin: this.form.pinyin,
212
+            wubi: this.form.wubi,
213
+            tube_color: this.form.tube_color,
214
+            team_type: this.form.team_type,
215
+            remark: this.form.remark
240 216
           }
241
-          return name
242
-        },
243
-        chagneInspection(id){
244
-           getProjectDetail(id).then(response=>{
245
-              if(response.data.state == 1){
246
-               var projectdetail = response.data.data.projecDetail
247
-               console.log("projectdetail",projectdetail)
248
-               this.tableData.push(projectdetail)
249
-              }
250
-           })
251
-        },
252
-       addProjectList(){
253
-          
254
-          for(let i=0;i<this.projectList.length;i++){
255
-            if(this.form.project_detail == this.projectList[i].id){
256
-                this.projectList[i].number = this.form.number
257
-                this.tableData.push(this.projectList[i])
258
-            }
259
-         }
260
-         console.log("33333",this.tableData)
261
-      
262
-         
263
-            const params = {
264
-              id:this.form.project_detail,
265
-              number:parseInt(this.form.number)
266
-            }
267
-           console.log("params",params)
268
-          addProjectList(params).then(response=>{
269
-             if(response.data.state == 1){
270
-               var projectList = response.data.data.projectList
271
-               var item = response.data.data.item
272
-               console.log("item22222",item)
273
-               this.itemList.push(item.id)
274
-               this.$message.success("保存成功")
275
-               this.form.project_detail = ""
276
-               this.form.number = ""
277
-            //    this.getlist()
278
-             }
279
-          })
280
-        },
281
-        DeleteProject(id,index){
282
-           this.$confirm("确认删除此项目吗?", "删除", {
283
-            confirmButtonText: "确 定",
284
-            cancelButtonText: "取 消",
285
-            type: "warning"
286
-         }).then(() => {
287
-          DeleteProject(id).then(response => {
217
+          let data = {
218
+            'info': this.tableData
219
+          }
220
+          saveTeam(data, params).then(response => {
288 221
             if (response.data.state == 1) {
289
-               this.tableData.splice(index, 1);
222
+              var projectTeam = response.data.data.projectTeam
223
+              console.log('projectTeam', projectTeam)
224
+              this.$message.success('保存成功')
225
+              this.visible = false
226
+              this.form.project_team = '',
227
+                this.form.price = '',
228
+                this.form.pinyin = '',
229
+                this.form.wubi = '',
230
+                this.form.tube_color = '',
231
+                this.form.team_type = '',
232
+                this.form.remark = ''
233
+              this.tableData = []
234
+              this.form.number = ''
235
+              this.$parent.getlist()
290 236
             } else {
291
-             
237
+              this.$message.error('项目组套名称已存在!')
292 238
             }
293
-          });
239
+          })
294 240
         })
295
-        .catch(() => {});
241
+      },
242
+      getlist() {
243
+        let params = {
244
+          keyword: ''
245
+
296 246
         }
247
+        getAllProjectList(params).then(response => {
248
+          if (response.data.state == 1) {
249
+            var projectList = response.data.data.projectList
250
+            var goodInfos = response.data.data.good_info
251
+
252
+            for (let i = 0; i < projectList.length; i++) {
253
+              let obj = {
254
+                id: projectList[i].id,
255
+                statistical_classification: projectList[i].statistical_classification,
256
+                number: '1',
257
+                project_name: projectList[i].project_name,
258
+                unit: projectList[i].unit,
259
+                price: projectList[i].price,
260
+                type: 2
261
+              }
262
+              this.projectList.push(obj)
263
+
264
+            }
265
+
266
+            for (let i = 0; i < goodInfos.length; i++) {
267
+              let obj = {
268
+                id: goodInfos[i].id,
269
+                statistical_classification: goodInfos[i].statistical_classification,
270
+                number: '1',
271
+                project_name: goodInfos[i].good_name,
272
+                unit: goodInfos[i].good_unit,
273
+                price: goodInfos[i].retail_price,
274
+                type: 3
275
+              }
276
+              this.projectList.push(obj)
277
+            }
278
+
279
+            console.log(this.projectList)
280
+
281
+            // this.projectList = projectList
282
+            //    var hisprojectlist = response.data.data.hisprojectlist
283
+            //    console.log("hisprojectlist",hisprojectlist)
284
+            //    this.tableData = hisprojectlist
285
+          }
286
+        })
287
+      },
288
+
289
+      getId(id) {
290
+        var name = ''
291
+        var statistics_category = getDictionaryDataConfig('system', 'statistics_category')
292
+        console.log('2235', statistics_category)
293
+        for (let i = 0; i < statistics_category.length; i++) {
294
+          if (id == statistics_category[i].id) {
295
+            name = statistics_category[i].name
296
+          }
297
+        }
298
+        return name
299
+      },
300
+      chagneInspection(id) {
301
+        getProjectDetail(id).then(response => {
302
+          if (response.data.state == 1) {
303
+            var projectdetail = response.data.data.projecDetail
304
+            console.log('projectdetail', projectdetail)
305
+            this.tableData.push(projectdetail)
306
+          }
307
+        })
308
+      },
309
+      addProjectList() {
310
+        console.log(this.projectList)
311
+        for (let i = 0; i < this.projectList.length; i++) {
312
+          if (this.form.project_detail == this.projectList[i].id) {
313
+            this.projectList[i].number = this.form.number
314
+            this.projectList[i].number = this.projectList[i].number.toString()
315
+            this.tableData.push(this.projectList[i])
316
+            this.form.project_detail = ''
317
+            this.form.number = 1
318
+          }
319
+        }
320
+        // console.log("33333",this.tableData)
321
+        //
322
+        //
323
+        //    const params = {
324
+        //      id:this.form.project_detail,
325
+        //      number:parseInt(this.form.number)
326
+        //    }
327
+        //   console.log("params",params)
328
+        //  addProjectList(params).then(response=>{
329
+        //     if(response.data.state == 1){
330
+        //       var projectList = response.data.data.projectList
331
+        //       var item = response.data.data.item
332
+        //       console.log("item22222",item)
333
+        //       this.itemList.push(item.id)
334
+        //       this.$message.success("保存成功")
335
+        //       this.form.project_detail = ""
336
+        //       this.form.number = ""
337
+        //    //    this.getlist()
338
+        //     }
339
+        //  })
340
+      },
341
+      DeleteProject(id, index) {
342
+        this.$confirm('确认删除此项目吗?', '删除', {
343
+          confirmButtonText: '确 定',
344
+          cancelButtonText: '取 消',
345
+          type: 'warning'
346
+        }).then(() => {
347
+          this.tableData.splice(index, 1)
348
+        })
349
+          .catch(() => {
350
+          })
351
+      }
297 352
     },
298
-    created(){
353
+    created() {
299 354
       //获取所以的项目
300 355
       this.getlist()
301
-   
356
+
357
+    }, watch: {
358
+      'tableData': function() {
359
+        let c = 0
360
+        this.form.price  = 0
361
+        for (let i = 0; i < this.tableData.length; i++) {
362
+          let a = parseFloat(this.tableData[i].number).toFixed(2)
363
+          let b = parseFloat(this.tableData[i].price).toFixed(2)
364
+          console.log(a)
365
+          console.log(b)
366
+
367
+
368
+          c = c + this.form.price + (a * b)
369
+
370
+        }
371
+        this.form.price = c.toFixed(2)
372
+      }
373
+
302 374
     }
303
-}
375
+  }
304 376
 </script>

+ 43 - 48
src/xt_pages/data/components/consumables.vue Просмотреть файл

@@ -10,8 +10,8 @@
10 10
         <label class="title"><span class="name">是否启用</span> : </label>
11 11
         <el-select v-model="is_use" style="width:140px;margin-right:10px;" placeholder="请选择" @change="changeUser">
12 12
           <el-option
13
-            v-for="item in options"
14
-            :key="item.value"
13
+            v-for="(item,z) in options"
14
+            :key="z"
15 15
             :label="item.label"
16 16
             :value="item.value">
17 17
           </el-option>
@@ -19,8 +19,8 @@
19 19
         <label class="title"><span class="name">生产厂商</span> : </label>
20 20
         <el-select v-model="manufacturer" style="width:140px;margin-right:10px;" placeholder="请选择" @change="changeManufacture">
21 21
           <el-option
22
-            v-for="item in manufacturers"
23
-            :key="item.id"
22
+            v-for="(item,y) in manufacturers"
23
+            :key="y"
24 24
             :label="item.manufacturer_name"
25 25
             :value="item.id">
26 26
           </el-option>
@@ -28,34 +28,13 @@
28 28
         <span style="color: #909399;font-size:14px;">备案 : &nbsp;</span>
29 29
         <el-select v-model="is_record" style="width:140px;margin-right:10px;" placeholder="请选择" @change="changeRecord">
30 30
           <el-option
31
-            v-for="item in optionOne"
32
-            :key="item.value"
33
-            :label="item.label"
34
-            :value="item.value">
35
-          </el-option>
36
-        </el-select>
37
-        <!-- <label class="title"><span class="name">是否收费</span> : </label>
38
-        <el-select v-model="is_charge" style="width:140px;margin-right:10px;" placeholder="请选择" @change="changeCharge">
39
-          <el-option
40
-            v-for="item in options"
41
-            :key="item.value"
31
+            v-for="(item,index) in optionOne"
32
+            :key="index"
42 33
             :label="item.label"
43 34
             :value="item.value">
44 35
           </el-option>
45 36
         </el-select>
46
-        <span style="color: #909399;font-size:14px;">耗材种类 : &nbsp;</span>
47
-        <el-select v-model="good_kind" style="width:140px;margin-right:10px;" placeholder="请选择" @change="changeKind">
48
-          <el-option
49
-            label="全部"
50
-            value="0">
51
-          </el-option>
52
-          <el-option
53
-            v-for="item,index in  getDictionaryDataConfig('system','good_kind')"
54
-            :key="index"
55
-            :label="item.name"
56
-            :value="item.id">
57
-          </el-option>
58
-        </el-select> -->
37
+
59 38
       </div>
60 39
       <div>
61 40
         <el-button type="primary" @click="openForm()">新增</el-button>
@@ -64,8 +43,8 @@
64 43
     </div>
65 44
 
66 45
      <div style="display:flex; align-items:center;margin-bottom:10px;">
67
-        <el-button type="primary" size="mini" @click="BatchDelete()" v-if="$store.getters.xt_user.org_id == 9504 || $store.getters.xt_user.org_id == 10028">批量备案</el-button>
68
-        <el-button type="primary" size="mini" v-if="$store.getters.xt_user.org_id != 9504 && $store.getters.xt_user.org_id != 10028" @click="GDYBBatchPutOnRecord">批量备案</el-button>
46
+        <!--<el-button type="primary" size="mini" @click="BatchDelete()" v-if="$store.getters.xt_user.org_id == 9504 || $store.getters.xt_user.org_id == 10028 || $store.getters.xt_user.org_id == 10138">批量备案</el-button>-->
47
+        <!--<el-button type="primary" size="mini">批量备案</el-button>-->
69 48
         <el-link target="_blank" href="https://kuyi.shengws.com/stockTemplate.xlsx" :underline="false"
70 49
                  style="margin-left:15px">
71 50
           <el-button
@@ -121,14 +100,14 @@
121 100
         </template>
122 101
       </el-table-column>
123 102
 
124
-      <el-table-column label="最小单位" width="60" align="center">
103
+      <!-- <el-table-column label="最小单位" width="60" align="center">
125 104
         <template slot-scope="scope">
126 105
           {{ getGoodUnit(scope.row.good_unit) }}
127 106
         </template>
128
-      </el-table-column>
129
-      <el-table-column label="零售价" width="60" align="center">
107
+      </el-table-column> -->
108
+      <el-table-column label="零售价" width="100" align="center">
130 109
         <template slot-scope="scope">
131
-          {{ scope.row.retail_price }}
110
+          {{ scope.row.packing_price }}
132 111
         </template>
133 112
       </el-table-column>
134 113
        <el-table-column label="社保目录编码" width="110" align="center">
@@ -145,18 +124,18 @@
145 124
 
146 125
       </el-table-column>
147 126
 
148
-      <el-table-column prop="date" label="操作" width="300" align="center">
127
+      <el-table-column prop="date" label="操作" width="320" align="center">
149 128
         <template slot-scope="scope">
150 129
           <el-button @click="handleGoodInfoEdit(scope.$index, scope.row)" type="primary" size="small">编辑</el-button>
151 130
           <!--<el-button type="primary" size="small" @click="clickSelfPayment(scope.row.id)">自付比例</el-button>-->
152 131
           <el-button type="danger" size="small" @click="handleGoodInfoDelete(scope.$index, scope.row)">删除</el-button>
153 132
 
154
-          <el-button type="primary" size="small" icon="el-icon-refresh-left" @click="toReturn(scope.row.id,scope.row.is_mark)" v-if="$store.getters.xt_user.org_id == 9504 || $store.getters.xt_user.org_id == 10028">
155
-             <span v-if="scope.row.is_mark == 0">备案</span>
156
-             <span v-if="scope.row.is_mark == 1">撤销</span>
157
-          </el-button>
133
+          <!--<el-button type="primary" size="small" @click="toReturn(scope.row.id,scope.row.is_mark)" v-if="$store.getters.xt_user.org_id == 9504 || $store.getters.xt_user.org_id == 10028 || $store.getters.xt_user.org_id == 10138">-->
134
+             <!--<span v-if="scope.row.is_mark == 0">备案</span>-->
135
+             <!--<span v-if="scope.row.is_mark == 1">撤销</span>-->
136
+          <!--</el-button>-->
158 137
 
159
-          <el-button type="primary" size="small" icon="el-icon-refresh-left" v-if="$store.getters.xt_user.org_id != 9504 && $store.getters.xt_user.org_id != 10028">
138
+          <el-button type="primary" size="small" >
160 139
             <span v-if="scope.row.is_mark == 0 || scope.row.is_mark == 2"  @click="putOnRecord(scope.row.id)" >目录对照</span>
161 140
             <span v-if="scope.row.is_mark == 1"  @click="putOnUnRecord(scope.row.id)" >撤消对照</span>
162 141
           </el-button>
@@ -206,7 +185,7 @@
206 185
       width="40%"
207 186
     >
208 187
 
209
-      <div v-for="(item,index) in logs" :key="index">
188
+      <div v-for="(item,i) in logs" :key="i">
210 189
         <span> {{ item.export_time | parseTime('{y}-{m}-{d} {h}:{i}:{s}')}}</span>
211 190
         <br/>
212 191
         <br/>
@@ -327,7 +306,13 @@
327 306
               good_number:'',
328 307
               social_security_directory_code:"",
329 308
               special_medical:"",
330
-              production_type:""
309
+              production_type:"",
310
+              min_number:"",
311
+              packing_unit:"",
312
+              packing_price:'',
313
+              default_count_unit:"",
314
+              min_unit:"",
315
+              total:"",
331 316
             },
332 317
             isVisibility: false,
333 318
 
@@ -681,6 +666,13 @@
681 666
                 response.data.data.goodInfo.sort.toString()
682 667
             }
683 668
 
669
+            if (response.data.data.goodInfo.total <= 0) {
670
+              this.goodInfo.goodInfoDialog.formValue.total = ''
671
+            } else {
672
+              this.goodInfo.goodInfoDialog.formValue.total =
673
+                      response.data.data.goodInfo.total
674
+            }
675
+
684 676
 
685 677
             if (response.data.data.goodInfo.is_doctor_use <= 0) {
686 678
               this.goodInfo.goodInfoDialog.formValue.is_doctor_use = ''
@@ -706,8 +698,15 @@
706 698
             }else{
707 699
               this.goodInfo.goodInfoDialog.formValue.special_medical = response.data.data.goodInfo.special_medical.toString()
708 700
             }
709
-
701
+            this.goodInfo.goodInfoDialog.formValue.min_unit = response.data.data.goodInfo.min_unit
702
+            this.goodInfo.goodInfoDialog.formValue.min_number = response.data.data.goodInfo.min_number
703
+            this.goodInfo.goodInfoDialog.formValue.packing_unit = response.data.data.goodInfo.packing_unit
704
+            this.goodInfo.goodInfoDialog.formValue.packing_price = response.data.data.goodInfo.packing_price
705
+            this.goodInfo.goodInfoDialog.formValue.default_count_unit = response.data.data.goodInfo.default_count_unit
710 706
             this.$refs.addConsumable.show(row.id, this.goodInfo.goodInfoDialog.formValue)
707
+
708
+
709
+
711 710
           }
712 711
         })
713 712
       },
@@ -791,16 +790,12 @@
791 790
         })
792 791
       },
793 792
       goodInfoDialogComfirm: function(val) {
794
-
793
+        console.log("val22222",val)
795 794
         if (val.isCreated == 2) {
796 795
           //修改
797 796
           val['id'] = this.goodInfo.editGoodId;
798 797
           val['good_code'] = this.goodInfo.good_code;
799 798
 
800
-
801
-
802
-
803
-
804 799
           modifyGoodInfo(val).then(response => {
805 800
             if (response.data.state == 0) {
806 801
               // this.$message.error(response.data.msg)

+ 188 - 152
src/xt_pages/data/components/drugs.vue Просмотреть файл

@@ -2,20 +2,12 @@
2 2
   <div class="page_drugs">
3 3
     <div style="display:flex;justify-content: space-between;width:100%;margin-bottom:20px;">
4 4
       <div class="cell clearfix" style="margin-bottom:0;">
5
-        <el-input style="width: 180px;margin-right:10px;" @keyup.enter.native='searchAction' v-model.trim="search_input"
5
+        <el-input style="width: 180px;margin-right:10px;" @keyup.enter.native='searchAction'
6 6
                   class="filter-item" v-model="keywords"/>
7 7
         <el-button style="margin-right:10px;" class="filter-item" type="primary" icon="el-icon-search"
8 8
                    @click="searchAction">搜索
9 9
         </el-button>
10
-        <!-- <label class="title"><span class="name">是否启用</span> : </label>
11
-        <el-select v-model="is_use" style="width:140px;margin-right:10px;" placeholder="请选择" @change="changeUser">
12
-          <el-option
13
-            v-for="item in options"
14
-            :key="item.value"
15
-            :label="item.label"
16
-            :value="item.value">
17
-          </el-option>
18
-        </el-select> -->
10
+
19 11
        <label class="title"><span class="name">生产厂商</span> : </label>
20 12
         <el-select v-model="manufacturer" style="width:140px;margin-right:10px;" placeholder="请选择" @change="changeManufacture">
21 13
           <el-option
@@ -25,7 +17,7 @@
25 17
             :value="item.id">
26 18
           </el-option>
27 19
         </el-select>
28
-        <label class="title"><span class="name">是否收费</span> : </label>
20
+        <label class="title"><span class="name">是否备案</span> : </label>
29 21
         <el-select v-model="is_charge" style="width:140px;margin-right:10px;" placeholder="请选择" @change="changeCharge">
30 22
           <el-option
31 23
             v-for="item in options"
@@ -34,15 +26,7 @@
34 26
             :value="item.value">
35 27
           </el-option>
36 28
         </el-select>
37
-        <!-- <span style="color: #909399;font-size:14px;">是否注射类别 : &nbsp;</span>
38
-        <el-select v-model="is_inject" style="width:140px;margin-right:10px;" placeholder="请选择" @change="changeInject">
39
-          <el-option
40
-            v-for="item in options"
41
-            :key="item.value"
42
-            :label="item.label"
43
-            :value="item.value">
44
-          </el-option>
45
-        </el-select> -->
29
+
46 30
 
47 31
         <span style="color: #909399;font-size:14px;">备案 : &nbsp;</span>
48 32
         <el-select v-model="is_record" style="width:140px;margin-right:10px;" placeholder="请选择" @change="changeRecord">
@@ -56,14 +40,13 @@
56 40
       </div>
57 41
       <div>
58 42
         <el-button type="primary" @click="openForm(0)">新增</el-button>
59
-        <!-- <el-button type="primary" @click="BatchDelete()" v-if="$store.getters.xt_user.org_id == 9504 || $store.getters.xt_user.org_id == 10028" >批量备案</el-button>
60
-        <el-button type="primary" v-if="$store.getters.xt_user.org_id != 9504 && $store.getters.xt_user.org_id != 10028" @click="GDYBBatchPutOnRecord()">批量备案</el-button> -->
43
+
61 44
       </div>
62 45
 
63 46
     </div>
64 47
     <div style="display:flex; align-items:center;margin-bottom:10px;">
65
-        <el-button type="primary" size="small" @click="BatchDelete()" v-if="$store.getters.xt_user.org_id == 9504 || $store.getters.xt_user.org_id == 10028" >批量备案</el-button>
66
-        <el-button type="primary" size="small" v-if="$store.getters.xt_user.org_id != 9504 && $store.getters.xt_user.org_id != 10028" @click="GDYBBatchPutOnRecord()">批量备案</el-button>
48
+        <!--<el-button type="primary" size="small" @click="BatchDelete()" v-if="$store.getters.xt_user.org_id == 9504 ||  this.$store.getters.xt_user.org_id == 10138 || $store.getters.xt_user.org_id == 10028" >批量备案</el-button>-->
49
+        <el-button type="primary" size="small"  @click="GDYBBatchPutOnRecord()">批量备案</el-button>
67 50
         <el-link target="_blank" href="https://kuyi.shengws.com/drugTemplate.xlsx" :underline="false"
68 51
                  style="margin-left:15px">
69 52
           <el-button
@@ -93,17 +76,20 @@
93 76
        ></el-table-column>
94 77
       <el-table-column type="index" label="序号" width="60px" align="center"></el-table-column>
95 78
 
96
-      <el-table-column prop="date" label="药品名称" align="center" width="100">
79
+      <el-table-column prop="date" label="药品名称" align="center" >
97 80
         <template slot-scope="scope">
98 81
           <div>{{scope.row.drug_name}}</div>
99 82
         </template>
100 83
       </el-table-column>
101
-      <el-table-column prop="date" label="规格" width="60" align="center">
84
+      <el-table-column prop="date" label="单位&规格" align="center">
102 85
         <template slot-scope="scope">
103
-          <div>{{scope.row.drug_spec}}</div>
86
+          <!-- <div>{{scope.row.drug_spec}}</div> -->
87
+          <div>
88
+            <span v-if="scope.row.min_unit != scope.row.dose_unit">{{scope.row.dose}}{{scope.row.dose_unit}}&nbsp;* &nbsp;</span>{{scope.row.min_number}}{{scope.row.min_unit}}/{{scope.row.max_unit}}
89
+          </div>
104 90
         </template>
105 91
       </el-table-column>
106
-      <el-table-column prop="date" label="最大单位" width="60" align="center">
92
+      <!-- <el-table-column prop="date" label="最大单位" width="60" align="center">
107 93
         <template slot-scope="scope">
108 94
           <div>{{scope.row.max_unit}}</div>
109 95
         </template>
@@ -112,13 +98,13 @@
112 98
         <template slot-scope="scope">
113 99
           <div>{{scope.row.min_unit}}</div>
114 100
         </template>
115
-      </el-table-column>
116
-      <el-table-column prop="date" label="进货价" width="60" align="center">
101
+      </el-table-column> -->
102
+      <el-table-column prop="date" label="进货价" width="100" align="center">
117 103
         <template slot-scope="scope">
118 104
           <div>{{scope.row.last_price}}</div>
119 105
         </template>
120 106
       </el-table-column>
121
-      <el-table-column label="零售价" width="60" align="center">
107
+      <el-table-column label="零售价" width="100" align="center">
122 108
         <template slot-scope="scope">
123 109
           <div>{{scope.row.retail_price}}</div>
124 110
         </template>
@@ -158,18 +144,18 @@
158 144
           <div>{{scope.row.drug_status.indexOf('停用') == -1 ? '启用':'停用' }}</div>
159 145
         </template>
160 146
       </el-table-column>
161
-      <el-table-column prop="date" label="操作" width="250" align="center" fixed="right">
147
+      <el-table-column prop="date" label="操作" width="280" align="center" fixed="right">
162 148
         <template slot-scope="scope">
163 149
           <el-button @click="openForm(scope.row.id)" type="primary" size="small">编辑</el-button>
164 150
           <el-button type="danger" size="small" @click="deleteDurg(scope.row.id,scope.$index)">删除</el-button>
165 151
 
166
-        <el-button type="primary" size="small" icon="el-icon-refresh-left" @click="toReturn(scope.row.id,scope.row.is_mark)" v-if="$store.getters.xt_user.org_id == 9504 || $store.getters.xt_user.org_id == 10028" >
167
-          <span v-if="scope.row.is_mark == 0">备案</span>
168
-          <span v-if="scope.row.is_mark == 1">撤消</span>
169
-        </el-button>
152
+        <!--<el-button type="primary" size="small" icon="el-icon-refresh-left" @click="toReturn(scope.row.id,scope.row.is_mark)" v-if="$store.getters.xt_user.org_id == 9504 || $store.getters.xt_user.org_id == 10028 || $store.getters.xt_user.org_id == 10138" >-->
153
+          <!--<span v-if="scope.row.is_mark == 0">备案</span>-->
154
+          <!--<span v-if="scope.row.is_mark == 1">撤消</span>-->
155
+        <!--</el-button>-->
170 156
 
171 157
 
172
-          <el-button type="primary" size="small" icon="el-icon-refresh-left" v-if="$store.getters.xt_user.org_id != 9504 && $store.getters.xt_user.org_id != 10028">
158
+          <el-button type="primary" size="small" icon="el-icon-refresh-left">
173 159
             <span v-if="scope.row.is_mark == 0 || scope.row.is_mark == 2"  @click="putOnRecord(scope.row.id)" >目录对照</span>
174 160
             <span v-if="scope.row.is_mark == 1"  @click="putOnUnRecord(scope.row.id)" >撤消对照</span>
175 161
           </el-button>
@@ -329,6 +315,10 @@
329 315
           drug_code: '',
330 316
           hosp_appr_flag:'',
331 317
           lmt_used_flag:'',
318
+          dose_unit:'',
319
+          min_price:'',
320
+          drug_day:"",//默认开药天数,
321
+          total:"",
332 322
         },
333 323
         tempFormValue: {
334 324
           drug_name: '',//药品名称
@@ -381,6 +371,12 @@
381 371
           prescription_mark:'',
382 372
           hosp_appr_flag:'',
383 373
           lmt_used_flag:'',
374
+          dosage:'', //剂量
375
+          unval:'',//拆零
376
+          packing_unit:"",//包装单位
377
+          packing_price:"",//包装零售价
378
+          drug_day:"",//默认开药天数
379
+          total:"",
384 380
 
385 381
         },
386 382
 
@@ -500,6 +496,9 @@
500 496
         if (val.id > 0) {
501 497
           //修改
502 498
           val['id'] = this.current_id;
499
+
500
+          val.min_number =  parseInt(val.min_number)
501
+
503 502
           editBaseDrugLib(val,untit).then(response => {
504 503
             if (response.data.state == 0) {
505 504
               this.$message.error(response.data.msg);
@@ -513,7 +512,6 @@
513 512
         } else if (val.id == 0) {
514 513
           //新增
515 514
 
516
-
517 515
           createBaseDrugLib(val).then(response => {
518 516
             if (response.data.state == 0) {
519 517
               this.$message.error(response.data.msg);
@@ -567,7 +565,7 @@
567 565
               this.$message.error(response.data.msg);
568 566
               return false
569 567
             } else {
570
-
568
+              console.log("药品详情",response.data.data.drug)
571 569
               for (let key in response.data.data.drug) {
572 570
                 this.formValue[key] = response.data.data.drug[key]
573 571
               }
@@ -680,6 +678,11 @@
680 678
               if(this.formValue.hosp_appr_flag == 0){
681 679
                 this.formValue.hosp_appr_flag = ""
682 680
               }
681
+              if(this.formValue.drug_classify == 0){
682
+                 this.formValue.drug_classify = ""
683
+              }
684
+
685
+
683 686
 
684 687
               this.$refs.addDrugs.show(id, this.formValue)
685 688
 
@@ -733,11 +736,12 @@
733 736
             return false
734 737
           } else {
735 738
             this.total = response.data.data.total;
736
-            this.list = [];
737 739
 
740
+            this.list = [];
738 741
             for (let i = 0; i < response.data.data.list.length; i++) {
739 742
               this.list.push(response.data.data.list[i])
740 743
             }
744
+            console.log("数据库字典",this.list)
741 745
           }
742 746
         })
743 747
       },
@@ -928,40 +932,48 @@
928 932
      },
929 933
 
930 934
       handleSuccessTwo({ results, header }) {
931
-
935
+         console.log("header22222",header)
932 936
         if (header != undefined && header.length > 0) {
933 937
 
934 938
           var isHasDrugName = header.includes('*药品名称');
935
-
936
-          var isHasDrugSpec = header.includes('*药品规格');
937
-
939
+          console.log("isHasDrugName",isHasDrugName)
940
+          var isHasUnval = header.includes('*拆零');
941
+          console.log("isHasUnval",isHasUnval)
942
+          var isHasMinUnit= header.includes('*拆零单位');
943
+           console.log("isHasMinUnit",isHasMinUnit)
944
+          var isHasDosage =  header.includes('*剂量')
945
+          console.log("isHasDosage",isHasDosage)
946
+
947
+          var isHasMaxUnit= header.includes('*剂量单位');
948
+          console.log("isHasMaxUnit",isHasMaxUnit)
949
+          var isHasPackingUnit = header.includes('*包装单位')
950
+          console.log("isHasPackingUnit",isHasPackingUnit)
938 951
           var isHasDrugType =  header.includes('*药品类型');
939
-
952
+          console.log("isHasDrugType",isHasDrugType)
940 953
           var isHasDrugStockLimit =  header.includes('*库存警戒');
941
-
954
+          console.log("isHasDrugStockLimit",isHasDrugStockLimit)
942 955
           var isHasDrugOriginPlace= header.includes('*产地');
943
-
956
+          console.log("isHasDrugOriginPlace",isHasDrugOriginPlace)
944 957
           var isHasDrugDosageForm = header.includes('*药品剂型');
945
-
946
-          var isHasMaxUnit= header.includes('*最大单位');
947
-
948
-          var isHasMinUnit= header.includes('*最小单位');
958
+          console.log("isHasDrugDosageForm",isHasDrugDosageForm)
949 959
 
950 960
           var isHasUnitMatrixing= header.includes("*单位换算");
951
-
952
-          var isHasRetailPrice = header.includes('*单零售价');
953
-
954
-          var isHasLastPrice = header.includes('*上次进价');
955
-
961
+          console.log("isHasUnitMatrixing",isHasUnitMatrixing)
962
+          var isHasRetailPrice = header.includes('*拆零零售价');
963
+          console.log("isHasRetailPrice",isHasRetailPrice)
964
+          var isHasLastPrice = header.includes('*进货价');
965
+          var isHasPackingPrice= header.includes('*包装零售价');
966
+         console.log("isHasLastPrice",isHasLastPrice)
956 967
           var isHasDrugClassifye = header.includes('*药物分类');
957
-
968
+         console.log("isHasDrugClassifye",isHasDrugClassifye)
958 969
          var isHasManufacturer = header.includes('*生产厂商');
959
-
960
-         var isHasDrugDose = header.includes('*剂量');
961
-
962
-         var isDrugDoseUnit = header.includes('*剂量单位');
963
-
964
-          if (!(isHasDrugName  && isHasDrugSpec && isHasDrugType && isHasDrugStockLimit && isHasDrugOriginPlace && isHasDrugDosageForm && isHasMaxUnit &&  isHasMinUnit && isHasUnitMatrixing &&  isHasRetailPrice && isHasLastPrice && isHasDrugClassifye && isHasManufacturer && isHasDrugDose && isDrugDoseUnit)) {
970
+         console.log("isHasManufacturer",isHasManufacturer)
971
+         var isHasDrugDose = header.includes('*默认单次用量');
972
+        console.log("isHasDrugDose",isHasDrugDose)
973
+         var isDrugDoseUnit = header.includes('*默认单次用量单位');
974
+         console.log("isDrugDoseUnit",isDrugDoseUnit)
975
+          if (!(isHasDrugName  && isHasUnval && isHasDrugType && isHasDrugStockLimit && isHasDrugOriginPlace && isHasDrugDosageForm && isHasMaxUnit &&  isHasMinUnit && isHasUnitMatrixing &&  isHasRetailPrice && isHasLastPrice && isHasPackingPrice && isHasDrugClassifye && isHasManufacturer && isHasDrugDose && isDrugDoseUnit && isHasDosage && isHasPackingUnit)) {
976
+            console.log("分区222222222222222222222222222222")
965 977
             this.dialogVisible = true;
966 978
             return
967 979
           }
@@ -984,22 +996,74 @@
984 996
            }
985 997
 
986 998
 
987
-           if (results[i]['药品别名'] === undefined) {
988
-                obj['drug_alias'] = ''
999
+          if (results[i]['*拆零'] === undefined) {
1000
+                obj['min_number'] = ''
989 1001
               } else {
990
-           if (key == '药品别名') {
991
-               obj['drug_alias'] = results[i][key].replace(/\s/g,"")
1002
+           if (key == '*拆零') {
1003
+               obj['min_number'] = results[i][key].replace(/\s/g,"")
992 1004
               }
993 1005
            }
994 1006
 
995
-            if (results[i]['*药品规格'] === undefined) {
996
-                obj['drug_spec'] = ''
1007
+           if (results[i]['*拆零单位'] === undefined) {
1008
+                obj['min_unit'] = ''
997 1009
               } else {
998
-           if (key == '*药品规格') {
999
-               obj['drug_spec'] = results[i][key].replace(/\s/g,"")
1010
+           if (key == '*拆零单位') {
1011
+               obj['min_unit'] = results[i][key].replace(/\s/g,"")
1000 1012
               }
1001 1013
            }
1002 1014
 
1015
+
1016
+            if (results[i]['*剂量'] === undefined) {
1017
+                obj['dosage'] = ''
1018
+              } else {
1019
+            if (key == '*剂量') {
1020
+                obj['dosage'] = results[i][key].replace(/\s/g,"")
1021
+              }
1022
+           }
1023
+
1024
+           if (results[i]['*剂量单位'] === undefined) {
1025
+                obj['max_unit'] = ''
1026
+              } else {
1027
+           if (key == '*剂量单位') {
1028
+               obj['max_unit'] = results[i][key].replace(/\s/g,"")
1029
+              }
1030
+           }
1031
+
1032
+            if (results[i]['*包装单位'] === undefined) {
1033
+                obj['packing_unit'] = ''
1034
+              } else {
1035
+           if (key == '*包装单位') {
1036
+               obj['packing_unit'] = results[i][key].replace(/\s/g,"")
1037
+              }
1038
+           }
1039
+
1040
+
1041
+          if (results[i]['默认给药途径'] === undefined) {
1042
+                obj['delivery_way'] = ''
1043
+              } else {
1044
+           if (key == '默认给药途径') {
1045
+               obj['delivery_way'] = results[i][key].replace(/\s/g,"")
1046
+              }
1047
+           }
1048
+
1049
+           if (results[i]['默认执行频率'] === undefined) {
1050
+                obj['execution_frequency'] = ''
1051
+              } else {
1052
+           if (key == '默认执行频率') {
1053
+               obj['execution_frequency'] = results[i][key].replace(/\s/g,"")
1054
+              }
1055
+           }
1056
+
1057
+          if (results[i]['默认开药天数'] === undefined) {
1058
+                obj['drug_day'] = ''
1059
+              } else {
1060
+           if (key == '默认开药天数') {
1061
+               obj['drug_day'] = results[i][key].replace(/\s/g,"")
1062
+              }
1063
+           }
1064
+
1065
+
1066
+
1003 1067
             if (results[i]['*药品类型'] === undefined) {
1004 1068
                 obj['drug_type'] = ''
1005 1069
               } else {
@@ -1017,6 +1081,7 @@
1017 1081
               }
1018 1082
            }
1019 1083
 
1084
+
1020 1085
            if (results[i]['*产地'] === undefined) {
1021 1086
                 obj['drug_origin_place'] = ''
1022 1087
               } else {
@@ -1042,21 +1107,7 @@
1042 1107
               }
1043 1108
            }
1044 1109
 
1045
-           if (results[i]['*最大单位'] === undefined) {
1046
-                obj['max_unit'] = ''
1047
-              } else {
1048
-           if (key == '*最大单位') {
1049
-               obj['max_unit'] = results[i][key].replace(/\s/g,"")
1050
-              }
1051
-           }
1052 1110
 
1053
-           if (results[i]['*最小单位'] === undefined) {
1054
-                obj['min_unit'] = ''
1055
-              } else {
1056
-           if (key == '*最小单位') {
1057
-               obj['min_unit'] = results[i][key].replace(/\s/g,"")
1058
-              }
1059
-           }
1060 1111
 
1061 1112
 
1062 1113
             if (results[i]['*单位换算'] === undefined) {
@@ -1067,23 +1118,36 @@
1067 1118
               }
1068 1119
            }
1069 1120
 
1070
-            if (results[i]['*单零售价'] === undefined) {
1121
+
1122
+
1123
+
1124
+          if (results[i]['*拆零零售价'] === undefined) {
1071 1125
                 obj['retail_price'] = ''
1072 1126
               } else {
1073
-           if (key == '*单零售价') {
1127
+           if (key == '*拆零零售价') {
1074 1128
                obj['retail_price'] = results[i][key].replace(/\s/g,"")
1075 1129
               }
1076 1130
            }
1077 1131
 
1078 1132
 
1079
-         if (results[i]['*上次进价'] === undefined) {
1133
+          if (results[i]['*包装零售价'] === undefined) {
1134
+                obj['packing_price'] = ''
1135
+              } else {
1136
+           if (key == '*包装零售价') {
1137
+               obj['packing_price'] = results[i][key].replace(/\s/g,"")
1138
+              }
1139
+           }
1140
+
1141
+
1142
+         if (results[i]['*进货价'] === undefined) {
1080 1143
                 obj['last_price'] = ''
1081 1144
               } else {
1082
-           if (key == '*上次进价') {
1145
+           if (key == '*进价') {
1083 1146
                obj['last_price'] = results[i][key].replace(/\s/g,"")
1084 1147
               }
1085 1148
            }
1086 1149
 
1150
+
1087 1151
             if (results[i]['*药物分类'] === undefined) {
1088 1152
                 obj['drug_classify'] = ''
1089 1153
               } else {
@@ -1093,64 +1157,63 @@
1093 1157
            }
1094 1158
 
1095 1159
 
1096
-            if (results[i]['*生产厂商'] === undefined) {
1097
-                obj['manufacturer'] = ''
1098
-              } else {
1099
-           if (key == '*生产厂商') {
1100
-               obj['manufacturer'] = results[i][key].replace(/\s/g,"")
1101
-              }
1102
-           }
1103 1160
 
1104
-            if (results[i]['经销商'] === undefined) {
1105
-                obj['dealer'] = ''
1161
+
1162
+
1163
+           if (results[i]['*默认单次用量'] === undefined) {
1164
+                obj['drug_dose'] = ''
1106 1165
               } else {
1107
-            if (key == '经销商') {
1108
-                obj['dealer'] = results[i][key].replace(/\s/g,"")
1166
+           if (key == '*默认单次用量') {
1167
+               obj['drug_dose'] = results[i][key].replace(/\s/g,"")
1109 1168
               }
1110 1169
            }
1111 1170
 
1112
-           if (results[i]['拼音'] === undefined) {
1113
-                obj['pinyin'] = ''
1171
+
1172
+           if (results[i]['*默认单次用量单位'] === undefined) {
1173
+                obj['drug_dose_unit'] = ''
1114 1174
               } else {
1115
-            if (key == '拼音') {
1116
-                obj['pinyin'] = results[i][key].replace(/\s/g,"")
1175
+           if (key == '*默认单次用量单位') {
1176
+               obj['drug_dose_unit'] = results[i][key].replace(/\s/g,"")
1117 1177
               }
1118 1178
            }
1119 1179
 
1120
-           if (results[i]['五笔'] === undefined) {
1121
-                obj['wubi'] = ''
1180
+           if (results[i]['*生产厂商'] === undefined) {
1181
+                obj['manufacturer'] = ''
1122 1182
               } else {
1123
-            if (key == '五笔') {
1124
-                obj['wubi'] = results[i][key].replace(/\s/g,"")
1183
+           if (key == '*生产厂商') {
1184
+               obj['manufacturer'] = results[i][key].replace(/\s/g,"")
1125 1185
               }
1126 1186
            }
1127 1187
 
1128 1188
 
1129 1189
 
1130
-            if (results[i]['别名拼音'] === undefined) {
1131
-                obj['drug_alias_pinyin'] = ''
1190
+            if (results[i]['经销商'] === undefined) {
1191
+                obj['dealer'] = ''
1132 1192
               } else {
1133
-            if (key == '别名拼音') {
1134
-                obj['drug_alias_pinyin'] = results[i][key].replace(/\s/g,"")
1193
+            if (key == '经销商') {
1194
+                obj['dealer'] = results[i][key].replace(/\s/g,"")
1135 1195
               }
1136 1196
            }
1137 1197
 
1138
-            if (results[i]['别名拼音'] === undefined) {
1139
-                obj['drug_alias_pinyin'] = ''
1198
+           if (results[i]['限制性用药'] === undefined) {
1199
+                obj['lmt_used_flag'] = ''
1140 1200
               } else {
1141
-            if (key == '别名拼音') {
1142
-                obj['drug_alias_pinyin'] = results[i][key].replace(/\s/g,"")
1201
+            if (key == '限制性用药') {
1202
+                obj['lmt_used_flag'] = results[i][key].replace(/\s/g,"")
1143 1203
               }
1144 1204
            }
1145 1205
 
1146
-            if (results[i]['别名五笔'] === undefined) {
1147
-                obj['drug_alias_wubi'] = ''
1206
+
1207
+
1208
+           if (results[i]['药品别名'] === undefined) {
1209
+                obj['drug_alias'] = ''
1148 1210
               } else {
1149
-            if (key == '别名五笔') {
1150
-                obj['drug_alias_wubi'] = results[i][key].replace(/\s/g,"")
1211
+           if (key == '药品别名') {
1212
+               obj['drug_alias'] = results[i][key].replace(/\s/g,"")
1151 1213
               }
1152 1214
            }
1153 1215
 
1216
+
1154 1217
              if (results[i]['药品类别'] === undefined) {
1155 1218
                 obj['drug_category'] = ''
1156 1219
               } else {
@@ -1159,6 +1222,8 @@
1159 1222
               }
1160 1223
            }
1161 1224
 
1225
+
1226
+
1162 1227
            if (results[i]['开药控制'] === undefined) {
1163 1228
                 obj['drug_control'] = ''
1164 1229
               } else {
@@ -1175,13 +1240,7 @@
1175 1240
               }
1176 1241
            }
1177 1242
 
1178
-          if (results[i]['审批标志'] === undefined) {
1179
-                obj['hosp_appr_flag'] = ''
1180
-              } else {
1181
-            if (key == '审批标志') {
1182
-                obj['hosp_appr_flag'] = results[i][key].replace(/\s/g,"")
1183
-              }
1184
-           }
1243
+
1185 1244
 
1186 1245
             if (results[i]['审批标志'] === undefined) {
1187 1246
                 obj['hosp_appr_flag'] = ''
@@ -1207,6 +1266,7 @@
1207 1266
               }
1208 1267
            }
1209 1268
 
1269
+
1210 1270
            if (results[i]['统计分类'] === undefined) {
1211 1271
                 obj['statistics_category'] = ''
1212 1272
               } else {
@@ -1288,31 +1348,6 @@
1288 1348
               }
1289 1349
            }
1290 1350
 
1291
-          if (results[i]['*剂量'] === undefined) {
1292
-                obj['drug_dose'] = ''
1293
-              } else {
1294
-            if (key == '*剂量') {
1295
-                obj['drug_dose'] = results[i][key].replace(/\s/g,"")
1296
-              }
1297
-           }
1298
-
1299
-           if (results[i]['*剂量单位'] === undefined) {
1300
-                obj['drug_dose_unit'] = ''
1301
-              } else {
1302
-            if (key == '*剂量单位') {
1303
-                obj['drug_dose_unit'] = results[i][key].replace(/\s/g,"")
1304
-              }
1305
-           }
1306
-
1307
-           if (results[i]['限制性用药'] === undefined) {
1308
-                obj['lmt_used_flag'] = ''
1309
-              } else {
1310
-            if (key == '限制性用药') {
1311
-                obj['lmt_used_flag'] = results[i][key].replace(/\s/g,"")
1312
-              }
1313
-           }
1314
-
1315
-
1316 1351
          }
1317 1352
          var newArr = [];
1318 1353
          tableData.push(obj);
@@ -1384,6 +1419,7 @@
1384 1419
        let params = {
1385 1420
           'drugs':tableData
1386 1421
         };
1422
+        console.log("params222222222",params)
1387 1423
 
1388 1424
         postDrugInformation(params).then(response=>{
1389 1425
            if(response.data.state == 1){

+ 331 - 260
src/xt_pages/data/components/editInspection.vue Просмотреть файл

@@ -1,12 +1,13 @@
1 1
 <template>
2 2
     <el-dialog
3
-        :title="formTitle"
4
-        width="900px"
5
-        :visible.sync="visible"
6
-        :before-close="_close"
3
+            :title="formTitle"
4
+            width="900px"
5
+            :visible.sync="visible"
6
+            :before-close="_close"
7 7
     >
8 8
         <div>
9
-            <el-form :model="form" :rules="rules" ref="form" label-width="100px" style="display: flex;flex-wrap: wrap;justify-content: space-between;">
9
+            <el-form :model="form" :rules="rules" ref="form" label-width="100px"
10
+                     style="display: flex;flex-wrap: wrap;justify-content: space-between;">
10 11
                 <el-form-item label="组套名称 : " prop="project_team" style="width:100%">
11 12
                     <el-input v-model="form.project_team" placeholder="" maxlength="30"></el-input>
12 13
                 </el-form-item>
@@ -19,60 +20,64 @@
19 20
                 <el-form-item label="五笔 : " prop="wubi" style="width:50%">
20 21
                     <el-input v-model="form.wubi" placeholder="" maxlength="30"></el-input>
21 22
                 </el-form-item>
22
-                
23
+
23 24
                 <el-form-item label="试管颜色 : " prop="name" style="width:50%">
24
-                     <el-select v-model="form.tube_color" style="width:160px;" placeholder="请选择">
25
+                    <el-select v-model="form.tube_color" style="width:160px;" placeholder="请选择">
25 26
                         <el-option
26
-                         v-for="(item,index) in getDictionaryDataConfig('system','tube_color')"
27
-                         :key="index"
28
-                         :label="item.name"
29
-                         :value="item.id">
27
+                                v-for="(item,index) in getDictionaryDataConfig('system','tube_color')"
28
+                                :key="index"
29
+                                :label="item.name"
30
+                                :value="item.id">
30 31
                         </el-option>
31
-                  </el-select>
32
+                    </el-select>
32 33
                 </el-form-item>
33 34
                 <el-form-item label="组套类型 : " prop="team_type" style="width:50%">
34
-                    <el-select v-model="form.team_type" style="width:100%;" placeholder="请选择">
35
+                    <el-select v-model="form.team_type" style="width:100%;" placeholder="请选择" @change="changeProject">
35 36
                         <el-option
36
-                        v-for="item in options"
37
-                        :key="item.value"
38
-                        :label="item.label"
39
-                        :value="item.value">
37
+                                v-for="item in options"
38
+                                :key="item.value"
39
+                                :label="item.label"
40
+                                :value="item.value">
40 41
                         </el-option>
41 42
                     </el-select>
42 43
                 </el-form-item>
43 44
                 <el-form-item label="备注 : " prop="name" style="width:100%;">
44 45
                     <el-input type="textarea" :rows="2" placeholder="请输入内容" v-model="form.remark"></el-input>
45 46
                 </el-form-item>
46
-                 <el-form-item label="组套明细" style="width:50%;">
47
-                    <el-select v-model="form.project_detail" placeholder="请选择">
47
+                <el-form-item label="组套明细" style="width:50%;">
48
+                    <el-select v-model="form.project_detail" filterable placeholder="请选择">
48 49
                         <el-option
49
-                        v-for="item in projectList"
50
-                        :key="item.id"
51
-                        :label="item.project_name"
52
-                        :value="item.id">
50
+                                v-for="item,index in projectList"
51
+                                :key="index"
52
+                                :label="item.project_name"
53
+                                :value="item.id">
53 54
                         </el-option>
54 55
                     </el-select>
55 56
 
56
-                    </el-form-item>
57
-                 <el-form-item label="数量" style="width:50%;"> 
58
-                      <div style="display:flex;"> 
59
-                         <el-input v-model="form.number" style="margin-right:10px;"></el-input>
60
-                         <el-button type="primary" @click="addProjectList">添加</el-button>
61
-                      </div>
62
-                  </el-form-item>
57
+                </el-form-item>
58
+                <el-form-item label="数量" style="width:50%;">
59
+                    <div style="display:flex;">
60
+                        <el-input v-model="form.number" style="margin-right:10px;"></el-input>
61
+                        <el-button type="primary" @click="addProjectList">添加</el-button>
62
+                    </div>
63
+                </el-form-item>
63 64
             </el-form>
64 65
             <el-form>
65
-                <el-table :data="tableData" border  style="100%" :row-style="{ color: '#303133' }" :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}" highlight-current-row ref="tab">
66
+                <el-table :data="tableData" border style="100%" :row-style="{ color: '#303133' }"
67
+                          :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"
68
+                          highlight-current-row ref="tab">
66 69
                     <el-table-column align="center" prop="name" label="分类" width="120">
67
-                        <template slot-scope="scope">{{getId(scope.row.statistical_classification)}}</template>
70
+                        <template slot-scope="scope">
71
+                            <div>{{scope.row.type == 2?getId(scope.row.statistical_classification):'耗材'}}</div>
72
+                        </template>
68 73
                     </el-table-column>
69 74
                     <el-table-column align="center" prop="name" label="组套明细" width="120">
70 75
                         <template slot-scope="scope">{{scope.row.project_name}}</template>
71 76
                     </el-table-column>
72
-                     <el-table-column align="center" prop="name" label="数量" width="120">
77
+                    <el-table-column align="center" prop="name" label="数量" width="120">
73 78
                         <template slot-scope="scope">{{scope.row.number}}</template>
74 79
                     </el-table-column>
75
-                     <el-table-column align="center" prop="name" label="单位" width="120">
80
+                    <el-table-column align="center" prop="name" label="单位" width="120">
76 81
                         <template slot-scope="scope">{{scope.row.unit}}</template>
77 82
                     </el-table-column>
78 83
                     <el-table-column align="center" prop="name" label="单价" width="120">
@@ -80,18 +85,18 @@
80 85
                     </el-table-column>
81 86
                     <el-table-column align="center" prop="name" label="操作">
82 87
                         <template slot-scope="scope">
83
-                          <el-tooltip
84
-                            class="item"
85
-                            effect="dark"
86
-                            content="删除"
87
-                            placement="top"
88
+                            <el-tooltip
89
+                                    class="item"
90
+                                    effect="dark"
91
+                                    content="删除"
92
+                                    placement="top"
88 93
                             >
89
-                            <el-button
90
-                                type="danger"
91
-                                icon="el-icon-delete"
92
-                                size="small"
93
-                                @click="DeleteProject(scope.row.id,scope.$index)"
94
-                            ></el-button>
94
+                                <el-button
95
+                                        type="danger"
96
+                                        icon="el-icon-delete"
97
+                                        size="small"
98
+                                        @click="DeleteProject(scope.row.m_id,scope.$index)"
99
+                                ></el-button>
95 100
                             </el-tooltip>
96 101
                         </template>
97 102
                     </el-table-column>
@@ -102,234 +107,300 @@
102 107
 
103 108
         <div slot="footer" class="dialog-footer">
104 109
             <el-button @click="hide">取 消</el-button>
105
-            <el-button type="primary"  @click="submitAction('form')">保 存</el-button>
110
+            <el-button type="primary" @click="submitAction('form')">保 存</el-button>
106 111
         </div>
107
-  </el-dialog>
112
+    </el-dialog>
108 113
 </template>
109 114
 
110 115
 <script>
111
-import { getProjectTeamDetail,updatedProjectTeam,getAllProjectList,addProjectList,DeleteProject } from "@/api/project/project"
112
-import { getDictionaryDataConfig,getDataConfig} from "@/utils/data";
113
-export default {
114
-    data(){
115
-        return{
116
-            visible:false,
117
-            formTitle:'',
118
-            activeName:'first',
119
-            form:{
120
-              id:"",
121
-              project_team:'',
122
-              price:"",
123
-              pinyin:"",
124
-              wubi:"",
125
-              tube_color:"",
126
-              team_type:"",
127
-              remark:"",
128
-              project_detail:"",
129
-              number:"",
130
-              item_id:"",
131
-            },
132
-            options: [{
133
-            value: 1,
134
-            label: '是'
135
-            }, {
136
-            value: 2,
137
-            label: '否'
138
-            },],
139
-            value: '',
140
-            radio:'1',
141
-            rules: {
142
-              project_team: [{ required: true, message: '请填写组套名称', trigger: 'blur'  }],
143
-            //   pinyin: [{ required: true, message: '请填写拼音' , trigger: 'blur' }],
144
-            //   wubi: [{ required: true, message: '请填写五笔' , trigger: 'blur' }],
145
-              price: [{ required: true, message: '请填写价格', trigger: 'change' }],
146
-              team_type: [{ required:true,message:'请填写组套类型',trigger:'change' }]
147
-           },
148
-           tableData:[],
149
-           item_id:[],
150
-           projectList:[]
151
-        }
152
-    },
153
-    methods:{
154
-         getDataConfig(module, filed_name){
155
-            return getDataConfig(module, filed_name)
156
-        },
157
-            getDictionaryDataConfig(module, filed_name) {
158
-            return getDictionaryDataConfig(module, filed_name)
159
-        },
160
-        _close: function(done) {
161
-            done()
162
-        },
163
-        clear: function() {
164
-            this.form.id = 0;
165
-            this.form.name = "";
166
-            this.form.intro = "";
167
-        },
168
-        show(id) {
169
-         this.visible = true
170
-         this.formTitle = '编辑'
171
-         this.getProjectTeamDetail(id) 
116
+  import {
117
+    editTeam
118
+  } from '@/api/his/his'
119
+  import {
120
+    addProjectList,
121
+    DeleteProject,
122
+    getAllProjectList,
123
+    getProjectTeamDetail,
124
+    updatedProjectTeam
125
+  } from '@/api/project/project'
126
+  import { getDataConfig, getDictionaryDataConfig } from '@/utils/data'
127
+
128
+  export default {
129
+    data() {
130
+      return {
131
+        visible: false,
132
+        formTitle: '',
133
+        activeName: 'first',
134
+        form: {
135
+          id: '',
136
+          project_team: '',
137
+          price: '',
138
+          pinyin: '',
139
+          wubi: '',
140
+          tube_color: '',
141
+          team_type: '',
142
+          remark: '',
143
+          project_detail: '',
144
+          number: '',
145
+          item_id: ''
172 146
         },
173
-        hide() {
174
-    
175
-            this.visible = false
147
+        options: [{
148
+          value: 1,
149
+          label: '是'
150
+        }, {
151
+          value: 2,
152
+          label: '否'
153
+        }],
154
+        value: '',
155
+        radio: '1',
156
+        rules: {
157
+          project_team: [{ required: true, message: '请填写组套名称', trigger: 'blur' }],
158
+          //   pinyin: [{ required: true, message: '请填写拼音' , trigger: 'blur' }],
159
+          //   wubi: [{ required: true, message: '请填写五笔' , trigger: 'blur' }],
160
+          price: [{ required: true, message: '请填写价格', trigger: 'change' }],
161
+          team_type: [{ required: true, message: '请填写组套类型', trigger: 'change' }]
176 162
         },
177
-        getProjectTeamDetail(id){
178
-           getProjectTeamDetail(id).then(response=>{
179
-              if(response.data.state == 1){
180
-                 var projectTeamDetail =  response.data.data.projectTeamDetail
181
-                 console.log("projectTeamDetail",projectTeamDetail)
182
-                 var str  = projectTeamDetail.project_id
183
-                 var arr = str.split(",")
184
-                 console.log("Arr33333",arr)
185
-                 var list = response.data.data.list
186
-                 console.log("list",list)
187
-                 var hisList = response.data.data.hisList
188
-                 console.log("histList",hisList)
189
-                 for(let i=0;i<list.length;i++){
190
-                   for(let j=0;j<hisList.length;j++){
191
-                       if(list[i].id == hisList[j].project_id){
192
-                           list[i].number = hisList[j].number
193
-                       }
194
-                   }
195
-                 }
196
-                
197
-                 var strArr = []
198
-                 for(let i=0;i<arr.length;i++){
199
-                   for(let j=0;j<list.length;j++){
200
-                      if((arr[i]== list[j].id)){
201
-                          strArr.push(list[j])
202
-                      }
203
-                   }
204
-                 }
205
-                 console.log("数据222222",strArr)
206
-                 this.tableData = strArr
207
-               
208
-               
209
-                 this.form.id = projectTeamDetail.id
210
-                 this.form.project_team = projectTeamDetail.project_team
211
-                 this.form.price = projectTeamDetail.price
212
-                 this.form.pinyin = projectTeamDetail.pinyin
213
-                 this.form.wubi  = projectTeamDetail.wubi
214
-                 this.form.tube_color = projectTeamDetail.tube_color
215
-                 if(projectTeamDetail.tube_color == 0){
216
-                    this.form.tube_color = ""
217
-                 }
218
-                 this.form.team_type = projectTeamDetail.team_type
219
-                 if(projectTeamDetail.team_type == 0){
220
-                    this.form.team_type = ""
221
-                 }     
222
-                 this.form.remark = projectTeamDetail.remark
223
-                 this.form.item_id = projectTeamDetail.item_id
224
-                //  console.log("project",projectTeamDetail)
163
+        tableData: [],
164
+        item_id: [],
165
+        projectList: []
166
+      }
167
+    },
168
+    methods: {
169
+      changeProject() {
170
+        this.form.number = 1
171
+
172
+      },
173
+      getDataConfig(module, filed_name) {
174
+        return getDataConfig(module, filed_name)
175
+      },
176
+      getDictionaryDataConfig(module, filed_name) {
177
+        return getDictionaryDataConfig(module, filed_name)
178
+      },
179
+      _close: function(done) {
180
+        done()
181
+      },
182
+      clear: function() {
183
+        this.form.id = 0
184
+        this.form.name = ''
185
+        this.form.intro = ''
186
+      },
187
+      show(id) {
188
+        this.visible = true
189
+        this.formTitle = '编辑'
190
+        this.getlist(id)
191
+        this.getProjectTeamDetail(id)
192
+
193
+      }, getlist(id) {
194
+
195
+        getAllProjectList().then(response => {
196
+          if (response.data.state == 1) {
197
+            console.log(id)
198
+            console.log('!~~~~')
199
+
200
+            var projectList = response.data.data.projectList
201
+            var goodInfos = response.data.data.good_info
202
+
203
+            for (let i = 0; i < projectList.length; i++) {
204
+              let obj = {
205
+                id: projectList[i].id,
206
+                statistical_classification: projectList[i].statistical_classification,
207
+                number: '1',
208
+                project_name: projectList[i].project_name,
209
+                unit: projectList[i].unit,
210
+                price: projectList[i].price,
211
+                type: 2,
212
+                m_id: 0
225 213
               }
226
-           }) 
227
-        },
228
-        submitAction(formName){
229
-           this.$refs[formName].validate((valid)=>{
230
-               var arr = []
231
-                for(let i=0;i<this.tableData.length;i++){
232
-                    arr.push(this.tableData[i].id)
233
-                }
234
-             
235
-               var ids = arr.join(",")
236
-               var item_id = this.form.item_id + "," + this.item_id.join(",") 
237
-               console.log("item_id",item_id)
238
-               
239
-               if(valid){
240
-                var params = {
241
-                    id:this.form.id,
242
-                    project_team:this.form.project_team,
243
-                    price:this.form.price,
244
-                    pinyin:this.form.pinyin,
245
-                    wubi:this.form.wubi,
246
-                    tube_color:this.form.tube_color,
247
-                    team_type:this.form.team_type,
248
-                    remark:this.form.remark,
249
-                    ids:ids,
250
-                    item_id:item_id
251
-                }
252
-                // console.log("params",params)
253
-                 updatedProjectTeam(params).then(response=>{
254
-                   if(response.data.state == 1){
255
-                     var projectTeam = response.data.data.projectTeam
256
-                     this.$message.success("保存成功")
257
-                     this.visible = false
258
-                     this.$parent.getlist()
259
-                   }
260
-                 })
214
+              this.projectList.push(obj)
215
+
216
+            }
217
+
218
+            for (let i = 0; i < goodInfos.length; i++) {
219
+              let obj = {
220
+                id: goodInfos[i].id,
221
+                statistical_classification: goodInfos[i].statistical_classification,
222
+                number: '1',
223
+                project_name: goodInfos[i].good_name,
224
+                unit: goodInfos[i].good_unit,
225
+                price: goodInfos[i].retail_price,
226
+                type: 3,
227
+                m_id: 0
228
+
261 229
               }
262
-           })  
263
-        
264
-        },
265
-       getlist(){
266
-          getAllProjectList().then(response=>{
267
-             if(response.data.state == 1){
268
-               var projectList = response.data.data.projectList
269
-               console.log('projectlist33333',projectList)
270
-               this.projectList = projectList
271
-               var hisprojectlist = response.data.data.hisprojectlist
272
-             console.log("hisprojectlist",hisprojectlist)
273
-            //    this.tableData = hisprojectlist
274
-             }
275
-          })   
276
-        },
277
-        getId(id){
278
-          console.log("id",id)
279
-          var name = ""
280
-          var statistics_category =  getDictionaryDataConfig('system','statistics_category') 
281
-          console.log("statics",statistics_category)
282
-          for(let i=0;i<statistics_category.length;i++){
283
-             if(id == statistics_category[i].id){
284
-                 name = statistics_category[i].name
285
-             }
230
+              this.projectList.push(obj)
231
+            }
232
+
286 233
           }
287
-          return name
288
-        },
289
-       addProjectList(){
290
-           
291
-           console.log("表格",this.tableData)
292
-            const params = {
293
-              id:this.form.project_detail,
294
-              number:parseInt(this.form.number)
234
+        })
235
+      },
236
+
237
+      hide() {
238
+        this.visible = false
239
+      },
240
+      getProjectTeamDetail(id) {
241
+        getProjectTeamDetail(id).then(response => {
242
+          if (response.data.state == 1) {
243
+            this.tableData = []
244
+            var projectTeamDetail = response.data.data.projectTeamDetail
245
+            var hisList = response.data.data.hisList
246
+
247
+            console.log(this.projectList)
248
+            console.log(hisList)
249
+
250
+            for (let i = 0; i < hisList.length; i++) {
251
+
252
+              let obj = {
253
+                m_id: hisList[i].id,
254
+                id: hisList[i].project_id,
255
+                number: hisList[i].number,
256
+                type: hisList[i].type
257
+              }
258
+              if (hisList[i].type == 2) {
259
+                obj['statistical_classification'] = hisList[i].project.statistical_classification
260
+                obj['project_name'] = hisList[i].project.project_name
261
+                obj['unit'] = hisList[i].project.unit
262
+                obj['price'] = hisList[i].project.price
263
+
264
+              } else {
265
+                obj['project_name'] = hisList[i].good_info.good_name
266
+                obj['unit'] = hisList[i].good_info.good_unit
267
+                obj['price'] = hisList[i].good_info.retail_price
268
+              }
269
+              this.tableData.push(obj)
295 270
             }
296
-           console.log("params",params)
297
-          addProjectList(params).then(response=>{
298
-             if(response.data.state == 1){
299
-               var projectList = response.data.data.projectList
300
-               projectList.number = parseInt(this.form.number)
301
-               this.tableData.push(projectList)
302
-               console.log("23333",this.tableData)
303
-               var item = response.data.data.item
304
-               this.item_id.push(item.id)
305
-               this.$message.success("保存成功")
306
-               this.form.project_detail = ""
307
-               this.form.number = ""
308
-               this.getlist()
309
-             }
310
-          })
311
-        },
312
-        DeleteProject(id,index){
313
-
314
-           this.$confirm("确认删除此项目吗?", "删除", {
315
-            confirmButtonText: "确 定",
316
-            cancelButtonText: "取 消",
317
-            type: "warning"
318
-         }).then(() => {
319
-          DeleteProject(id).then(response => {
320
-            if (response.data.state == 1) {
321
-               this.tableData.splice(index, 1);
322
-               
323
-            } else {
324
-             
271
+            this.form.id = projectTeamDetail.id
272
+            this.form.project_team = projectTeamDetail.project_team
273
+            this.form.price = projectTeamDetail.price
274
+            this.form.pinyin = projectTeamDetail.pinyin
275
+            this.form.wubi = projectTeamDetail.wubi
276
+            this.form.tube_color = projectTeamDetail.tube_color
277
+            if (projectTeamDetail.tube_color == 0) {
278
+              this.form.tube_color = ''
279
+            }
280
+            this.form.team_type = projectTeamDetail.team_type
281
+            if (projectTeamDetail.team_type == 0) {
282
+              this.form.team_type = ''
325 283
             }
326
-          });
284
+            this.form.remark = projectTeamDetail.remark
285
+            // this.form.item_id = projectTeamDetail.item_id
286
+            //  console.log("project",projectTeamDetail)
287
+          }
327 288
         })
328
-        .catch(() => {});
289
+      },
290
+      submitAction(formName) {
291
+        this.$refs[formName].validate((valid) => {
292
+          var arr = []
293
+          for (let i = 0; i < this.tableData.length; i++) {
294
+            if (this.tableData[i].m_id == 0) {
295
+              arr.push(this.tableData[i])
296
+            }
297
+          }
298
+
299
+          if (valid) {
300
+            var params = {
301
+              id: this.form.id,
302
+              project_team: this.form.project_team,
303
+              price: this.form.price,
304
+              pinyin: this.form.pinyin,
305
+              wubi: this.form.wubi,
306
+              tube_color: this.form.tube_color,
307
+              team_type: this.form.team_type,
308
+              remark: this.form.remark
309
+            }
310
+            let data = {
311
+              'info': arr
312
+            }            // console.log("params",params)
313
+            editTeam(params, data).then(response => {
314
+              if (response.data.state == 1) {
315
+                // var projectTeam = response.data.data.projectTeam
316
+                this.$message.success('保存成功')
317
+                this.visible = false
318
+                // this.$parent.getlist()
319
+              }
320
+            })
321
+          }
322
+        })
323
+
324
+      },
325
+      getId(id) {
326
+        console.log('id', id)
327
+        var name = ''
328
+        var statistics_category = getDictionaryDataConfig('system', 'statistics_category')
329
+        console.log('statics', statistics_category)
330
+        for (let i = 0; i < statistics_category.length; i++) {
331
+          if (id == statistics_category[i].id) {
332
+            name = statistics_category[i].name
333
+          }
334
+        }
335
+        return name
336
+      },
337
+      addProjectList() {
338
+        for (let i = 0; i < this.projectList.length; i++) {
339
+          if (this.form.project_detail == this.projectList[i].id) {
340
+            this.projectList[i].number = this.form.number
341
+            this.projectList[i].number = this.projectList[i].number.toString()
342
+            this.tableData.push(this.projectList[i])
343
+            this.form.project_detail = ''
344
+            this.form.number = ''
345
+          }
329 346
         }
347
+
348
+      },
349
+      DeleteProject(id, index) {
350
+
351
+        if (id == 0) {
352
+          this.$confirm('确认删除此项目吗?', '删除', {
353
+            confirmButtonText: '确 定',
354
+            cancelButtonText: '取 消',
355
+            type: 'warning'
356
+          }).then(() => {
357
+            this.tableData.splice(index, 1)
358
+
359
+          })
360
+            .catch(() => {
361
+            })
362
+
363
+        } else {
364
+          this.$confirm('确认删除此项目吗?', '删除', {
365
+            confirmButtonText: '确 定',
366
+            cancelButtonText: '取 消',
367
+            type: 'warning'
368
+          }).then(() => {
369
+            DeleteProject(id).then(response => {
370
+              if (response.data.state == 1) {
371
+                this.tableData.splice(index, 1)
372
+
373
+              } else {
374
+
375
+              }
376
+            })
377
+          })
378
+            .catch(() => {
379
+            })
380
+
381
+        }
382
+
383
+      }
330 384
     },
331
-    created(){
332
-       this.getlist()   
385
+    created() {
386
+      this.getlist()
387
+    },watch: {
388
+      'tableData': function() {
389
+        let c = 0
390
+        this.form.price  = 0
391
+        for (let i = 0; i < this.tableData.length; i++) {
392
+          let a = parseFloat(this.tableData[i].number).toFixed(2)
393
+          let b = parseFloat(this.tableData[i].price).toFixed(2)
394
+          console.log(a)
395
+          console.log(b)
396
+
397
+
398
+          c = c + this.form.price + (a * b)
399
+
400
+        }
401
+        this.form.price = c.toFixed(2)
402
+      }
403
+
333 404
     }
334
-}
405
+  }
335 406
 </script>

+ 1 - 1
src/xt_pages/data/components/inspection.vue Просмотреть файл

@@ -37,7 +37,7 @@
37 37
                    {{scope.row.wubi}}
38 38
                 </template>
39 39
             </el-table-column>
40
-            <el-table-column label="价格" width="60" align="center">
40
+            <el-table-column label="价格" width="100" align="center">
41 41
                 <template slot-scope="scope">
42 42
                    {{scope.row.price}}
43 43
                 </template>

+ 8 - 9
src/xt_pages/data/components/project.vue Просмотреть файл

@@ -39,8 +39,8 @@
39 39
             </div>
40 40
         </div>
41 41
         <div style="display:flex; align-items:center;margin-bottom:10px;">
42
-        <el-button type="primary" size="small" @click="BatchDelete()" v-if="$store.getters.xt_user.org_id == 9504 || $store.getters.xt_user.org_id == 10028" >批量备案</el-button>
43
-        <el-button type="primary" size="small" v-if="$store.getters.xt_user.org_id != 9504 && $store.getters.xt_user.org_id != 10028" @click="GDYBBatchPutOnRecord()">批量备案</el-button>
42
+        <!--<el-button type="primary" size="small" @click="BatchDelete()" v-if="$store.getters.xt_user.org_id == 9504 || $store.getters.xt_user.org_id == 10028" >批量备案</el-button>-->
43
+        <el-button type="primary" size="small" @click="GDYBBatchPutOnRecord()">批量备案</el-button>
44 44
         <el-link target="_blank" href="https://kuyi.shengws.com/itemTemplate.xlsx" :underline="false"
45 45
                  style="margin-left:15px">
46 46
           <el-button
@@ -114,12 +114,12 @@
114 114
                 <template slot-scope="scope">
115 115
                     <el-button @click="editHisProject(scope.row.id)" type="primary" size="small">编辑</el-button>
116 116
                     <el-button type="danger" size="small" @click="deleteProject(scope.row.id,scope.$index)">删除</el-button>
117
-                    <el-button type="primary" size="small" icon="el-icon-refresh-left" @click="toReturn(scope.row.id,scope.row.is_mark)" v-if="$store.getters.xt_user.org_id == 9504 || $store.getters.xt_user.org_id == 10028">
118
-                      <span v-if="scope.row.is_mark ==0">备案</span>
119
-                      <span v-if="scope.row.is_mark ==1">撤销</span>
120
-                    </el-button>
117
+                    <!--<el-button type="primary" size="small" icon="el-icon-refresh-left" @click="toReturn(scope.row.id,scope.row.is_mark)" v-if="$store.getters.xt_user.org_id == 9504 || $store.getters.xt_user.org_id == 10028 || $store.getters.xt_user.org_id == 10138">-->
118
+                      <!--<span v-if="scope.row.is_mark ==0">备案</span>-->
119
+                      <!--<span v-if="scope.row.is_mark ==1">撤销</span>-->
120
+                    <!--</el-button>-->
121 121
 
122
-                    <el-button type="primary" size="small" icon="el-icon-refresh-left" v-if="$store.getters.xt_user.org_id != 9504 && $store.getters.xt_user.org_id != 10028">
122
+                    <el-button type="primary" size="small" icon="el-icon-refresh-left">
123 123
                         <span v-if="scope.row.is_mark == 0 || scope.row.is_mark == 2"  @click="putOnRecord(scope.row.id)" >目录对照</span>
124 124
                         <span v-if="scope.row.is_mark == 1"  @click="putOnUnRecord(scope.row.id)" >撤消对照</span>
125 125
                     </el-button>
@@ -214,7 +214,7 @@ export default {
214 214
             total:0,
215 215
             tableData: [],
216 216
             is_start:0,
217
-            is_charge:0,
217
+            is_charge:'',
218 218
             selectDrug:[],
219 219
             optionOne: [
220 220
             {
@@ -228,7 +228,6 @@ export default {
228 228
               label: '未备案'
229 229
           }],
230 230
           is_mark:"",
231
-          limit:100,
232 231
           page:1,
233 232
           departMentList:[],
234 233
            dialogVisible:false,

+ 1 - 0
src/xt_pages/data/components/templateTable.vue Просмотреть файл

@@ -354,6 +354,7 @@ export default {
354 354
         }
355 355
 
356 356
         if (valid) {
357
+           
357 358
           createConfig(this.temp).then(response => {
358 359
             if (!response.data) {
359 360
               // 由于mockjs 不支持自定义状态码只能这样hack

+ 35 - 16
src/xt_pages/data/druguseTemplate.vue Просмотреть файл

@@ -347,6 +347,7 @@
347 347
                           :fetch-suggestions="querySearch"
348 348
                           placeholder="请输入内容"
349 349
                           @input="changeDrugName"
350
+                          @select="hangleSelectChange"
350 351
                       ></el-autocomplete>
351 352
                     </el-form-item>
352 353
                   </el-col>
@@ -549,6 +550,7 @@
549 550
                           :fetch-suggestions="querySearch"
550 551
                           placeholder="请输入内容"
551 552
                           @input="changeDrugNameTwo"
553
+                          @select="hangdleSelectTwo"
552 554
                          ></el-autocomplete>
553 555
                     </el-form-item>
554 556
                   </el-col>
@@ -1685,6 +1687,7 @@
1685 1687
         let name = encodeURIComponent(this.form.name)
1686 1688
         console.log("params",params)
1687 1689
         let sort = this.form.sort
1690
+        
1688 1691
         postAdviceTemplate(params, name,sort, this.form.advice_type).then(response => {
1689 1692
 
1690 1693
           if (response.data.state == 0) {
@@ -1814,17 +1817,20 @@
1814 1817
         })
1815 1818
       },
1816 1819
       handleSelect1(){
1817
-
1820
+       this.templateForm.drug_id =  val.id
1821
+       this.templateForm.way = 1
1818 1822
       },
1819
-      handleSelect(){
1820
-
1823
+      handleSelect(val){
1824
+        console.log("val23232",val)
1825
+        this.templateForm.drug_id =  val.id
1826
+        this.templateForm.way = 1
1821 1827
       },
1822 1828
       submitTemplate(formName) {
1823 1829
 
1824
-        if(this.src_type == ""){
1825
-            this.templateForm.way = 0
1826
-            this.templateForm.drug_id = 0
1827
-        }
1830
+        // if(this.src_type == ""){
1831
+        //     this.templateForm.way = 0
1832
+        //     this.templateForm.drug_id = 0
1833
+        // }
1828 1834
 
1829 1835
         if(this.src_type == 2){ //自备药
1830 1836
             var arr = this.templateForm.advice_name.split("(自备药)")
@@ -2198,13 +2204,13 @@
2198 2204
       //编辑医嘱
2199 2205
       submitEditTemplate(formName) {
2200 2206
 
2201
-         var drug_id = 0
2202
-         for(let i=0;i<this.all_drug.length;i++){
2203
-           if(this.templateFormEdit.advice_name == this.all_drug[i].drug_name){
2204
-              drug_id = this.all_drug[i].id
2205
-           }
2206
-         }
2207
-        this.templateFormEdit.drug_id = drug_id
2207
+        //  var drug_id = 0
2208
+        //  for(let i=0;i<this.all_drug.length;i++){
2209
+        //    if(this.templateFormEdit.advice_name == this.all_drug[i].drug_name){
2210
+        //       drug_id = this.all_drug[i].id
2211
+        //    }
2212
+        //  }
2213
+        // this.templateFormEdit.drug_id = drug_id
2208 2214
 
2209 2215
         console.log("编辑子药",this.templateFormEdit)
2210 2216
 
@@ -2373,9 +2379,11 @@
2373 2379
           this.templateForm.week_days = this.templateForm.weekday.filter(function(s) {
2374 2380
             return s && s.trim()
2375 2381
           }).join(',')
2382
+          this.templateForm.way = 1
2376 2383
         }
2384
+        this.templateForm.way = 1
2377 2385
         console.log("编辑模板",this.templateForm)
2378
-
2386
+      
2379 2387
         // 编辑创建医嘱模版
2380 2388
         CreateSingleAdviceTemplate(this.templateForm).then(response => {
2381 2389
           if (response.data.state == 0) {
@@ -2896,6 +2904,11 @@
2896 2904
             }
2897 2905
         }
2898 2906
       },
2907
+      hangdleSelectTwo(val){
2908
+        console.log("我的223232",val)
2909
+
2910
+        this.templateFormEdit.drug_id = val.id
2911
+      },
2899 2912
       changeDrugDescTwo(name) {
2900 2913
         this.current_drug_spec = name
2901 2914
         for (let i = 0; i < this.drugSpec.length; i++) {
@@ -2913,6 +2926,8 @@
2913 2926
       },
2914 2927
 
2915 2928
 
2929
+
2930
+
2916 2931
      querySearch(queryString, cb) {
2917 2932
         console.log('queryString',queryString)
2918 2933
         var restaurants = this.all_drug;
@@ -2945,7 +2960,11 @@
2945 2960
       },
2946 2961
      sortData(a, b) {
2947 2962
        return a.sort - b.sort
2948
-     }
2963
+     },
2964
+     hangleSelectChange(val){
2965
+      this.templateForm.way = 1
2966
+      this.templateForm.drug_id = val.id
2967
+    }
2949 2968
     }
2950 2969
   }
2951 2970
 </script>

+ 10 - 10
src/xt_pages/data/specialDictionary.vue Просмотреть файл

@@ -6,44 +6,44 @@
6 6
     <div class="app-container">
7 7
       <el-tabs v-model="activeName">
8 8
         <el-tab-pane label="药品" name="1">
9
-          <drugs></drugs>
9
+          <drugs v-if="activeName == 1"></drugs>
10 10
         </el-tab-pane>
11 11
         <el-tab-pane label="耗材" name="2">
12
-          <consumables></consumables>
12
+          <consumables v-if="activeName == 2"></consumables>
13 13
         </el-tab-pane>
14 14
         <el-tab-pane label="项目" name="3">
15
-         <project></project>
15
+         <project v-if="activeName == 3"></project>
16 16
         </el-tab-pane>
17 17
         <el-tab-pane label="项目组套" name="4">
18
-        <inspection></inspection>
18
+        <inspection v-if="activeName == 4"></inspection>
19 19
         </el-tab-pane>
20 20
         <el-tab-pane label="生产厂商" name="5">
21 21
           <!--<manufacturer></manufacturer>-->
22
-          <manufacturer></manufacturer>
22
+          <manufacturer v-if="activeName == 5"></manufacturer>
23 23
         </el-tab-pane>
24 24
         <el-tab-pane label="经销商" name="6">
25 25
           <!--<supplier></supplier>-->
26
-          <dealer></dealer>
26
+          <dealer v-if="activeName == 6"></dealer>
27 27
         </el-tab-pane>
28 28
         <el-tab-pane label="疾病类型" name="7">
29 29
         <!--<manufacturer></manufacturer>-->
30
-        <diagnosis></diagnosis>
30
+        <diagnosis v-if="activeName == 7"></diagnosis>
31 31
       </el-tab-pane>
32 32
         <!--<el-tab-pane label="医疗类别" name="8">-->
33 33
           <!--&lt;!&ndash;<manufacturer></manufacturer>&ndash;&gt;-->
34 34
           <!--<diagnosis></diagnosis>-->
35 35
         <!--</el-tab-pane>-->
36 36
         <el-tab-pane label="附加收费配置" name="8">
37
-          <addtion></addtion>
37
+          <addtion v-if="activeName == 8"></addtion>
38 38
         </el-tab-pane>
39 39
 
40 40
         <el-tab-pane label="配置项字典" name="9">
41
-          <configure></configure>
41
+          <configure v-if="activeName == 9"></configure>
42 42
         </el-tab-pane>
43 43
 
44 44
         <el-tab-pane label="诊断信息" name="10">
45 45
           <!--<diagnosis></diagnosis>-->
46
-          <diagnose-other></diagnose-other>
46
+          <diagnose-other v-if="activeName == 10"></diagnose-other>
47 47
         </el-tab-pane>
48 48
 
49 49
       </el-tabs>

+ 3 - 1
src/xt_pages/data/template.vue Просмотреть файл

@@ -45,7 +45,9 @@ export default {
45 45
         { label: this.$t("data_config.nursing_record"), key: "nursing_record" },
46 46
         { label: this.$t("data_config.special_record"), key: "special_record" },
47 47
         { label: this.$t("data_config.course_disease"), key: "course_disease" },
48
-        { label: this.$t("data_config.rescue_record"), key: "rescue_record" }
48
+        { label: this.$t("data_config.rescue_record"), key: "rescue_record" },
49
+        { label: this.$t("data_config.template_summary"), key: "template_summary" },
50
+        { label: this.$t("data_config.template_plan"), key: "template_plan" }
49 51
       ],
50 52
       activeName: "education",
51 53
       createdTimes: 0

+ 9 - 1
src/xt_pages/dialysis/batch_print/batch_print_order.vue Просмотреть файл

@@ -2049,10 +2049,18 @@ export default {
2049 2049
 
2050 2050
 
2051 2051
           for (const index in this.records) {
2052
+            for(const index2 in this.records[index].his_project){
2053
+              if(this.records[index].his_project[index2].type == 2){
2054
+                this.records[index].his_project[index2]['advice_name'] = this.records[index].his_project[index2].project.project_name
2055
+              }else if(this.records[index].his_project[index2].type == 3){
2056
+                this.records[index].his_project[index2]['advice_name'] =this.records[index].his_project[index2].good_info.good_name
2057
+              }
2058
+              this.records[index].his_project[index2]['advice_doctor'] = this.records[index].his_project[index2].doctor
2059
+            }
2052 2060
             this.records[index].advices = this.records[index].advices.concat(this.records[index].his_advices)
2061
+            this.records[index].advices = this.records[index].advices.concat(this.records[index].his_project)
2053 2062
           }
2054 2063
 
2055
-
2056 2064
           for (const recordIndex in this.records) {
2057 2065
             var dlegh = 0;
2058 2066
             if (

Разница между файлами не показана из-за своего большого размера
+ 2010 - 0
src/xt_pages/dialysis/batch_print/batch_print_order_forty.vue


Разница между файлами не показана из-за своего большого размера
+ 1524 - 0
src/xt_pages/dialysis/batch_print/batch_print_order_thirtySeven.vue


+ 24 - 0
src/xt_pages/dialysis/bloodPresssWatch.vue Просмотреть файл

@@ -249,6 +249,16 @@
249 249
           >批量打印</el-button
250 250
         >
251 251
       </template>
252
+      <template v-if="this.template_id == 37">
253
+        <el-button
254
+          size="small"
255
+          icon="el-icon-printer"
256
+          :disabled="selecting_schs.length == 0"
257
+          @click="batchPrintAction"
258
+          type="primary"
259
+          >批量打印</el-button
260
+        >
261
+      </template>
252 262
       <template v-if="this.template_id == 39">
253 263
         <el-button
254 264
           size="small"
@@ -259,6 +269,16 @@
259 269
           >批量打印</el-button
260 270
         >
261 271
       </template>
272
+      <template v-if="this.template_id == 40">
273
+        <el-button
274
+          size="small"
275
+          icon="el-icon-printer"
276
+          :disabled="selecting_schs.length == 0"
277
+          @click="batchPrintAction"
278
+          type="primary"
279
+          >批量打印</el-button
280
+        >
281
+      </template>
262 282
     </div>
263 283
     <div class="app-container">
264 284
       <!-- <div class="filter-container">
@@ -837,8 +857,12 @@ export default {
837 857
         this.$router.push({ path: "/dialysis/print/batch/thirtyTwo" });
838 858
       } else if (this.template_id == 33) {
839 859
         this.$router.push({ path: "/dialysis/print/batch/thirtyThree" });
860
+      } else if (this.template_id == 37) {
861
+        this.$router.push({ path: "/dialysis/print/batch/thirtySeven" });
840 862
       } else if (this.template_id == 39) {
841 863
         this.$router.push({ path: "/dialysis/print/batch/thirtyNine" });
864
+      } else if (this.template_id == 40) {
865
+        this.$router.push({ path: "/dialysis/print/batch/forty" });
842 866
       }
843 867
     },
844 868
     batchPrintActionOne: function() {

+ 51 - 33
src/xt_pages/dialysis/details/DialysisPrescription.vue Просмотреть файл

@@ -56,17 +56,23 @@
56 56
         <li v-if=" isShow('总量') && getValueStr('anticoagulant', 'anticoagulant') != 5 " >
57 57
           <label>总量: </label>
58 58
           <span class="content" v-if="getValueStr('anticoagulant', 'anticoagulant') != 1">{{anticoagulant_zongliang != "0" ? anticoagulant_zongliang : ""}}</span>
59
-          <span class="content" v-if="getValueStr('anticoagulant', 'anticoagulant') == 1" ></span>
60
-          <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 2 && this.$store.getters.xt_user.template_info.template_id != 13 &&  this.$store.getters.xt_user.template_info.template_id != 23 &&  this.$store.getters.xt_user.template_info.template_id != 40">{{ anticoagulant_zongliang != "0" ? "iu" : "" }}</span>
61
-          <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 2 && (this.$store.getters.xt_user.template_info.template_id == 13 || this.$store.getters.xt_user.template_info.template_id == 23 || this.$store.getters.xt_user.template_info.template_id == 40)">{{ anticoagulant_zongliang != "0" ? "mg" : "" }}</span>
62
-          <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 3" >{{ anticoagulant_zongliang != "0" ? "iu" : "" }}</span>
63
-          <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 1">{{ anticoagulant_zongliang != "0" ? "mg" : "" }}</span>
64
-          <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 4">{{ anticoagulant_zongliang != "0" ? "mg" : "" }}</span>
65
-          <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 5">{{ anticoagulant_zongliang != "0" ? "ml" : "" }}</span>
66
-          <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 6">{{ anticoagulant_zongliang != "0" ? "iu" : "" }}</span>
67
-          <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 7">{{ anticoagulant_zongliang != "0" ? "iu" : "" }}</span>
68
-          <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 8">{{ anticoagulant_zongliang != "0" ? "iu" : "" }}</span>
69
-          <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 9">{{ anticoagulant_zongliang != "0" ? "iu" : "" }}</span>
59
+          <span v-if="this.$store.getters.xt_user.template_info.org_id != 10101">
60
+            <span class="content" v-if="getValueStr('anticoagulant', 'anticoagulant') == 1" ></span>
61
+            <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 2 && this.$store.getters.xt_user.template_info.template_id != 13 &&  this.$store.getters.xt_user.template_info.template_id != 23 &&  this.$store.getters.xt_user.template_info.template_id != 40">{{ anticoagulant_zongliang != "0" ? "iu" : "" }}</span>
62
+            <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 2 && (this.$store.getters.xt_user.template_info.template_id == 13 || this.$store.getters.xt_user.template_info.template_id == 23 || this.$store.getters.xt_user.template_info.template_id == 40)">{{ anticoagulant_zongliang != "0" ? "mg" : "" }}</span>
63
+            <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 3" >{{ anticoagulant_zongliang != "0" ? "iu" : "" }}</span>
64
+            <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 1">{{ anticoagulant_zongliang != "0" ? "mg" : "" }}</span>
65
+            <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 4">{{ anticoagulant_zongliang != "0" ? "mg" : "" }}</span>
66
+            <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 5">{{ anticoagulant_zongliang != "0" ? "ml" : "" }}</span>
67
+            <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 6">{{ anticoagulant_zongliang != "0" ? "iu" : "" }}</span>
68
+            <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 7">{{ anticoagulant_zongliang != "0" ? "iu" : "" }}</span>
69
+            <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 8">{{ anticoagulant_zongliang != "0" ? "iu" : "" }}</span>
70
+            <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 9">{{ anticoagulant_zongliang != "0" ? "iu" : "" }}</span>
71
+          </span>
72
+          <span v-else>
73
+            <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 2">{{ anticoagulant_zongliang != "0" ? "mg" : "" }}</span>
74
+            <span class="unit" v-else>{{ anticoagulant_zongliang != "0" ? "iu" : "" }}</span>
75
+          </span>
70 76
         </li>
71 77
 
72 78
         <li v-if="isShow('透析器/灌流器')">
@@ -134,17 +140,23 @@
134 140
         <li v-if=" isShow('首剂') && getValueStr('anticoagulant', 'anticoagulant') != 5 " >
135 141
           <label>首剂 : </label>
136 142
           <span class="content" v-if="getValueStr('anticoagulant', 'anticoagulant') != 1">{{ anticoagulant_shouji != "0" ? anticoagulant_shouji : "" }}</span>
137
-          <span class="content" v-if="getValueStr('anticoagulant', 'anticoagulant') == 1" ></span>
138
-          <span class="unit"  v-if="getValueStr('anticoagulant', 'anticoagulant') == 2  && this.$store.getters.xt_user.template_info.template_id != 13  && this.$store.getters.xt_user.template_info.template_id != 23 && this.$store.getters.xt_user.template_info.template_id != 40" >{{ anticoagulant_shouji != "0" ? "iu" : "" }}</span>
139
-          <span class="unit"  v-if="getValueStr('anticoagulant', 'anticoagulant') == 2  && (this.$store.getters.xt_user.template_info.template_id == 13 ||  this.$store.getters.xt_user.template_info.template_id == 23 ||  this.$store.getters.xt_user.template_info.template_id == 40)" >{{ anticoagulant_shouji != "0" ? "mg" : "" }}</span>
140
-          <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 3">{{ anticoagulant_shouji != "0" ? "iu" : "" }}</span>
141
-          <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 1" >{{ anticoagulant_shouji != "0" ? "mg" : "" }}</span>
142
-          <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 4" >{{ anticoagulant_shouji != "0" ? "mg" : "" }}</span >
143
-          <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 5" >{{ anticoagulant_shouji != "0" ? "mg" : "" }}</span>
144
-          <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 6" >{{ anticoagulant_shouji != "0" ? "iu" : "" }}</span >
145
-          <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 7" >{{ anticoagulant_shouji != "0" ? "iu" : "" }}</span>
146
-          <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 8" >{{ anticoagulant_shouji != "0" ? "iu" : "" }}</span>
147
-          <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 9" >{{ anticoagulant_shouji != "0" ? "iu" : "" }}</span>
143
+          <span v-if="this.$store.getters.xt_user.template_info.org_id != 10101">
144
+            <span class="content" v-if="getValueStr('anticoagulant', 'anticoagulant') == 1" ></span>
145
+            <span class="unit"  v-if="getValueStr('anticoagulant', 'anticoagulant') == 2  && this.$store.getters.xt_user.template_info.template_id != 13  && this.$store.getters.xt_user.template_info.template_id != 23 && this.$store.getters.xt_user.template_info.template_id != 40" >{{ anticoagulant_shouji != "0" ? "iu" : "" }}</span>
146
+            <span class="unit"  v-if="getValueStr('anticoagulant', 'anticoagulant') == 2  && (this.$store.getters.xt_user.template_info.template_id == 13 ||  this.$store.getters.xt_user.template_info.template_id == 23 ||  this.$store.getters.xt_user.template_info.template_id == 40)" >{{ anticoagulant_shouji != "0" ? "mg" : "" }}</span>
147
+            <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 3">{{ anticoagulant_shouji != "0" ? "iu" : "" }}</span>
148
+            <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 1" >{{ anticoagulant_shouji != "0" ? "mg" : "" }}</span>
149
+            <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 4" >{{ anticoagulant_shouji != "0" ? "mg" : "" }}</span >
150
+            <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 5" >{{ anticoagulant_shouji != "0" ? "mg" : "" }}</span>
151
+            <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 6" >{{ anticoagulant_shouji != "0" ? "iu" : "" }}</span >
152
+            <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 7" >{{ anticoagulant_shouji != "0" ? "iu" : "" }}</span>
153
+            <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 8" >{{ anticoagulant_shouji != "0" ? "iu" : "" }}</span>
154
+            <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 9" >{{ anticoagulant_shouji != "0" ? "iu" : "" }}</span>
155
+          </span>
156
+          <span v-else>
157
+            <span class="unit"  v-if="getValueStr('anticoagulant', 'anticoagulant') == 2">{{ anticoagulant_shouji != "0" ? "mg" : "" }}</span>
158
+            <span class="unit"  v-else>{{ anticoagulant_shouji != "0" ? "iu" : "" }}</span>
159
+          </span>
148 160
         </li>
149 161
 
150 162
         <li v-if="isShow('钙')">
@@ -224,17 +236,23 @@
224 236
         <li v-if="isShow('维持') && getValueStr('anticoagulant', 'anticoagulant') != 5">
225 237
           <label>维持 : </label>
226 238
           <span class="content" v-if="getValueStr('anticoagulant', 'anticoagulant') != 1">{{ anticoagulant_weichi != "0" ? anticoagulant_weichi : "" }}</span>
227
-          <span class="content" v-if="getValueStr('anticoagulant', 'anticoagulant') == 1"></span>
228
-          <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 2 && this.$store.getters.xt_user.template_info.template_id != 13 && this.$store.getters.xt_user.template_info.template_id != 23 && this.$store.getters.xt_user.template_info.template_id != 40">{{ anticoagulant_weichi != "0" ? "iu/h" : "" }}</span>
229
-          <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 2 && (this.$store.getters.xt_user.template_info.template_id == 13 ||  this.$store.getters.xt_user.template_info.template_id == 23 ||  this.$store.getters.xt_user.template_info.template_id == 40)">{{ anticoagulant_weichi != "0" ? "mg/h" : "" }}</span>
230
-          <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 3">{{ anticoagulant_weichi != "0" ? "iu/h" : "" }}</span>
231
-          <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 1">{{ anticoagulant_weichi != "0" ? "mg/h" : "" }}</span>
232
-          <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 4">{{ anticoagulant_weichi != "0" ? "mg/h" : "" }}</span>
233
-          <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 5">{{ anticoagulant_weichi != "0" ? "ml/h" : "" }}</span>
234
-          <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 6">{{ anticoagulant_weichi != "0" ? "iu/h" : "" }}</span>
235
-          <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 7">{{ anticoagulant_weichi != "0" ? "iu/h" : "" }}</span>
236
-          <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 8">{{ anticoagulant_weichi != "0" ? "iu/h" : "" }}</span>
237
-          <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 9">{{ anticoagulant_weichi != "0" ? "iu/h" : "" }}</span>
239
+          <span v-if="this.$store.getters.xt_user.template_info.org_id != 10101">
240
+            <span class="content" v-if="getValueStr('anticoagulant', 'anticoagulant') == 1"></span>
241
+            <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 2 && this.$store.getters.xt_user.template_info.template_id != 13 && this.$store.getters.xt_user.template_info.template_id != 23 && this.$store.getters.xt_user.template_info.template_id != 40">{{ anticoagulant_weichi != "0" ? "iu/h" : "" }}</span>
242
+            <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 2 && (this.$store.getters.xt_user.template_info.template_id == 13 ||  this.$store.getters.xt_user.template_info.template_id == 23 ||  this.$store.getters.xt_user.template_info.template_id == 40)">{{ anticoagulant_weichi != "0" ? "mg/h" : "" }}</span>
243
+            <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 3">{{ anticoagulant_weichi != "0" ? "iu/h" : "" }}</span>
244
+            <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 1">{{ anticoagulant_weichi != "0" ? "mg/h" : "" }}</span>
245
+            <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 4">{{ anticoagulant_weichi != "0" ? "mg/h" : "" }}</span>
246
+            <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 5">{{ anticoagulant_weichi != "0" ? "ml/h" : "" }}</span>
247
+            <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 6">{{ anticoagulant_weichi != "0" ? "iu/h" : "" }}</span>
248
+            <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 7">{{ anticoagulant_weichi != "0" ? "iu/h" : "" }}</span>
249
+            <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 8">{{ anticoagulant_weichi != "0" ? "iu/h" : "" }}</span>
250
+            <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 9">{{ anticoagulant_weichi != "0" ? "iu/h" : "" }}</span>
251
+          </span>
252
+          <span v-else>
253
+            <span class="unit" v-if="getValueStr('anticoagulant', 'anticoagulant') == 2">{{ anticoagulant_weichi != "0" ? "mg/h" : "" }}</span>
254
+            <span class="unit" v-else>{{ anticoagulant_weichi != "0" ? "iu/h" : "" }}</span>
255
+          </span>
238 256
         </li>
239 257
 
240 258
         <li

+ 6 - 1
src/xt_pages/dialysis/details/NavIgation.vue Просмотреть файл

@@ -90,6 +90,7 @@
90 90
       :schedual="temp_schedual"
91 91
       :stockType="stockType"
92 92
       :lastAssessment="lastAssessment"
93
+      :mode_id="mode_id"
93 94
     ></dialysis-prescription-dialog>
94 95
 
95 96
     <double-check-dialog
@@ -209,12 +210,16 @@ export default {
209 210
 
210 211
   data() {
211 212
     return {
212
-      temp_schedual: {}
213
+      temp_schedual: {},
214
+      mode_id:1
213 215
     };
214 216
   },
215 217
   mounted() {},
216 218
 
217 219
   props: {
220
+    mode_id:{
221
+      type:Number
222
+    },
218 223
     longAdvices: {
219 224
       // 临时医嘱
220 225
       type: Array,

+ 5 - 1
src/xt_pages/dialysis/details/assessmentAfter.vue Просмотреть файл

@@ -40,7 +40,7 @@
40 40
         <li v-if="isShow('实际置换量')">
41 41
           <label>实际置换量 : </label>
42 42
           <span class="content">{{ actual_displacement }}</span>
43
-          <span class="unit" v-if="this.$store.getters.xt_user.template_info.template_id != 13 || this.$store.getters.xt_user.template_info.template_id == 40">ml</span>
43
+          <span class="unit" v-if="this.$store.getters.xt_user.template_info.template_id != 13 || this.$store.getters.xt_user.template_info.template_id != 40">ml</span>
44 44
           <span class="unit" v-else>L</span>
45 45
         </li>
46 46
         <li v-if="isShow('压迫后内瘘震颤')">
@@ -309,6 +309,10 @@
309 309
           <label>跌倒风险: </label>
310 310
           <span class="content" >{{ getFallrisk(this.record.fallrisk)}}</span>
311 311
         </li>
312
+        <li v-if="isShow('机器运行')">
313
+          <label>机器运行: </label>
314
+          <span class="content" >{{ this.record.machine_run}}</span>
315
+        </li>
312 316
       </ul>
313 317
     </div>
314 318
     <div class="note">

+ 30 - 2
src/xt_pages/dialysis/details/dialog/AssessmentAfterDislysis.vue Просмотреть файл

@@ -432,7 +432,7 @@
432 432
         <el-row :gutter="20"> -->
433 433
 
434 434
         <el-col :span="8" v-if="isShow('实际置换量')">
435
-          <el-form-item v-if="this.template_id == 20 || this.template_id == 21 || this.template_id == 40" label="实际置换量(ml): ">
435
+          <el-form-item v-if="this.template_id == 20 || this.template_id == 21" label="实际置换量(ml): ">
436 436
             <el-input v-model="form.actual_displacement"></el-input>
437 437
           </el-form-item>
438 438
           <el-form-item v-else label="实际置换量(L): ">
@@ -678,6 +678,21 @@
678 678
              </el-select>
679 679
             </el-form-item>
680 680
         </el-col>
681
+
682
+      <el-col :span="8" v-if="isShow('机器运行')">
683
+            <el-form-item label="机器运行: ">
684
+              <el-select v-model="form.machine_run">
685
+                <el-option :key="0" label="请选择" :value="0"></el-option>
686
+
687
+                <el-option
688
+                  v-for="item in machineList"
689
+                  :label="item.name"
690
+                  :value="item.name"
691
+                  :key="item.value"
692
+                ></el-option>
693
+              </el-select>
694
+            </el-form-item>
695
+       </el-col>
681 696
         <el-col :span="24" v-if="isShow('KT/V')">
682 697
             <el-form-item label="KT/V:">
683 698
               <el-input type="textarea" :rows="4" v-model="form.ktv"></el-input>
@@ -853,11 +868,13 @@ export default {
853 868
         lapse:"",
854 869
         consciousness:"",
855 870
         fallrisk:"",
871
+        machine_run:"",
856 872
       },
857 873
       lapseList:[],
858 874
       leaveOfficeMethod:[],
859 875
       consciousnessList:[],
860
-      fallriskList:[]
876
+      fallriskList:[],
877
+      machineList:[],
861 878
     }
862 879
   },
863 880
   watch: {
@@ -1068,7 +1085,9 @@ export default {
1068 1085
       data["lapse"] = this.form.lapse
1069 1086
       data["consciousness"] = this.form.consciousness
1070 1087
       data["fallrisk"] = this.form.fallrisk
1088
+      data["machine_run"] = this.form.machine_run
1071 1089
       console.log("Paramsquery",data)
1090
+     
1072 1091
       postAssessmentAfterDislysis(ParamsQuery, data)
1073 1092
         .then(response => {
1074 1093
           this.loading = false
@@ -1231,6 +1250,7 @@ export default {
1231 1250
       if(predialysis.id > 0){
1232 1251
         this.form.hypopiesia = predialysis.hypopiesia.toString()
1233 1252
       }
1253
+      
1234 1254
 
1235 1255
 
1236 1256
       this.form.leave_office_method = predialysis.leave_office_method
@@ -1250,6 +1270,12 @@ export default {
1250 1270
             }
1251 1271
           }
1252 1272
         }
1273
+        if(last_after.id > 0){
1274
+         this.form.hypertenison = last_after.hypertenison.toString()
1275
+        }
1276
+        if(last_after.id > 0){
1277
+          this.form.hypopiesia = last_after.hypopiesia.toString()
1278
+        }
1253 1279
       }
1254 1280
 
1255 1281
 
@@ -1350,6 +1376,8 @@ export default {
1350 1376
     this.leaveOfficeMethod = getDataConfig('hemodialysis','leave_office_method')
1351 1377
     this.consciousnessList = getDataConfig("hemodialysis","consciousness")
1352 1378
     this.fallriskList = getDataConfig("hemodialysis","fallrisk")
1379
+     this.machineList = getDataConfig("hemodialysis","machine_run")
1380
+     console.log("机器运行",this.machineList)
1353 1381
     this.internalFistulaTremorAcOptions = this.$store.getters.internal_fistula_tremor_ac
1354 1382
     this.patientGoseOptions = this.$store.getters.patient_gose
1355 1383
     this.observationContentOptions = this.$store.getters.observation_content

+ 41 - 55
src/xt_pages/dialysis/details/dialog/DoctorAdviceDialog.vue Просмотреть файл

@@ -24,33 +24,7 @@
24 24
       </div>
25 25
 
26 26
 
27
-      <!--<el-table-->
28
-      <!--:header-cell-style="{ backgroundColor: 'rgb(245, 247, 250)' }"-->
29
-      <!--:data="other_doctor_advices"-->
30
-      <!--border-->
31
-      <!--style="width: 100%"-->
32
-      <!--ref="advices_list"-->
33
-      <!--@row-click="cellMouseEnter"-->
34
-      <!--:row-class-name="tableRowClassName"-->
35
-      <!--:span-method="objectSpanMethod"-->
36
-      <!--:cell-class-name="adviceNameShow"-->
37
-      <!--:modal-append-to-body="false"-->
38
-      <!--highlight-current-row-->
39
-      <!--@current-change="handleCurrentChange"-->
40
-      <!--&gt;-->
41
-
42
-      <!--<el-table-column prop="advice_name" min-width="50px" label="医嘱内容" align="center">-->
43
-      <!--<template slot-scope="scope">-->
44
-      <!--<span class="el-dropdown-link">-->
45
-      <!--{{ getAdviceContent(scope.row, 1)-->
46
-      <!--}}-->
47
-      <!--<i class="el-icon-arrow-down el-icon&#45;&#45;right"></i>-->
48
-      <!--</span>-->
49
-      <!--</template>-->
50
-      <!--</el-table-column>-->
51
-
52
-
53
-      <!--</el-table>-->
27
+      
54 28
       <el-form
55 29
         ref="adForm"
56 30
         :rules="adRules"
@@ -1301,43 +1275,55 @@
1301 1275
               this.exceLoading = false
1302 1276
               return false
1303 1277
             } else {
1304
-
1305 1278
               this.$notify({
1306 1279
                 title: '成功',
1307 1280
                 message: '执行医嘱成功',
1308 1281
                 type: 'success',
1309 1282
                 duration: 2000
1310 1283
               })
1311
-              var exid = response.data.data.advice.id
1312
-              if (response.data.data.advice.parent_id > 0) {
1313
-                exid = response.data.data.advice.parent_id
1314
-              }
1315
-              // if (this.currentRow.parent_id > 0) {
1316
-              //     exid = this.currentRow.parent_id;
1317
-              // }
1318
-              this.currentRow.execution_state = 1
1319
-              this.currentRow.execution_staff =
1320
-                response.data.data.advice.execution_staff
1321
-              this.currentRow.execution_time =
1322
-                response.data.data.advice.execution_time
1323
-              var alen = this.doctor_advices.length
1324
-
1325
-              for (var index in this.doctor_advices) {
1326
-                if (
1327
-                  this.doctor_advices[index].id == exid ||
1328
-                  this.doctor_advices[index].parent_id == exid
1329
-                ) {
1330
-                  this.doctor_advices[index].execution_state = 1
1331
-                  this.doctor_advices[index].execution_staff =
1284
+              var msg = response.data.data.msg
1285
+              if(msg == 1){
1286
+                var exid = response.data.data.advice.id
1287
+                  if (response.data.data.advice.parent_id > 0) {
1288
+                    exid = response.data.data.advice.parent_id
1289
+                  }
1290
+                
1291
+                  this.currentRow.execution_state = 1
1292
+                  this.currentRow.execution_staff =
1332 1293
                     response.data.data.advice.execution_staff
1333
-                  this.doctor_advices[index].execution_time =
1294
+                  this.currentRow.execution_time =
1334 1295
                     response.data.data.advice.execution_time
1335
-                  // this.doctor_advices[index].checker = response.data.data.advice.checker;
1336
-                  break
1337
-                }
1296
+                  var alen = this.doctor_advices.length
1297
+
1298
+                  for (var index in this.doctor_advices) {
1299
+                    if (
1300
+                      this.doctor_advices[index].id == exid ||
1301
+                      this.doctor_advices[index].parent_id == exid
1302
+                    ) {
1303
+                      this.doctor_advices[index].execution_state = 1
1304
+                      this.doctor_advices[index].execution_staff =
1305
+                        response.data.data.advice.execution_staff
1306
+                      this.doctor_advices[index].execution_time =
1307
+                        response.data.data.advice.execution_time
1308
+                      // this.doctor_advices[index].checker = response.data.data.advice.checker;
1309
+                      break
1310
+                    }
1311
+                  }
1312
+                  this.execTimeDialogVisible = false
1313
+                  return false
1338 1314
               }
1339
-              this.execTimeDialogVisible = false
1340
-              return false
1315
+
1316
+              if(msg == 2){
1317
+                this.$message.error("库存不足,请入库")
1318
+                this.execTimeDialogVisible = false
1319
+                return false
1320
+              }
1321
+              if(msg == 3){
1322
+                this.$message.error("无库存,请入库")
1323
+                this.execTimeDialogVisible = false
1324
+                return false
1325
+              }
1326
+              
1341 1327
             }
1342 1328
           })
1343 1329
           .catch(() => {

+ 21 - 7
src/xt_pages/dialysis/details/dialog/adviceDialog/AddGroupAdvice.vue Просмотреть файл

@@ -693,13 +693,18 @@ export default {
693 693
             adviceNames: [],
694 694
             advice_doctor: this.groupForm.advice_doctor,
695 695
             remark: this.groupForm.remark,
696
-            parent_id: this.groupForm.parent_id
697
-          };
696
+            parent_id: this.groupForm.parent_id,
697
+            id:this.groupForm.id,
698 698
          
699
+          };
700
+          console.log("hhhhh",this.drug_id,this.nameForm.way)
699 701
           var adviceNames = [];
700 702
           for (const index in this.groupForm.adviceNames) {
701 703
             adviceNames.unshift(this.groupForm.adviceNames[index]);
702 704
           }
705
+          for(let i=0;i<adviceNames.length;i++){
706
+            adviceNames[i].template_id = "888888888"
707
+          }
703 708
           submitForm.adviceNames = adviceNames;
704 709
           let mode = "1";
705 710
           
@@ -729,7 +734,7 @@ export default {
729 734
              }
730 735
           }
731 736
           console.log("2222",submitForm)
732
-          
737
+         
733 738
           CreateGroupAdvice(this.patientID, 0, submitForm, mode).then(
734 739
             response => {
735 740
               if (response.data.state == 0) {
@@ -853,8 +858,8 @@ export default {
853 858
     submitNameForm(formName) {
854 859
       
855 860
        if(this.src_type == ""){
856
-          this.nameForm.way = 0
857
-          this.nameForm.drug_id = 0
861
+          this.nameForm.way = 1
862
+          this.nameForm.drug_id = this.drug_id
858 863
           this.nameForm.drug_name_id = 0
859 864
        }
860 865
 
@@ -1555,6 +1560,7 @@ export default {
1555 1560
                 obj.type = 2
1556 1561
                 obj.custom_id = this.rand(10000000, 99999999)
1557 1562
                 obj.drug_specs = medicalList[i].drug_specs
1563
+                obj.id = medicalList[i].id
1558 1564
                 this.all_drug.push(obj)
1559 1565
               }
1560 1566
             }
@@ -1590,6 +1596,7 @@ export default {
1590 1596
                 obj.type = 1
1591 1597
                 obj.custom_id = this.rand(10000000, 99999999)
1592 1598
                 obj.drug_specs = base_drug_list[i].drug_specs
1599
+                obj.id = base_drug_list[i].id
1593 1600
                 this.all_drug.push(obj)
1594 1601
 
1595 1602
               }
@@ -1610,8 +1617,10 @@ export default {
1610 1617
             this.drugSpec = this.all_drug[i].drug_specs
1611 1618
           }
1612 1619
        }
1620
+     
1613 1621
     },
1614 1622
     changeDrugDesc(name) {
1623
+      
1615 1624
         this.current_drug_spec = name
1616 1625
         for (let i = 0; i < this.drugSpec.length; i++) {
1617 1626
           if (this.drugSpec[i].drug_spec == name) {
@@ -1669,8 +1678,12 @@ export default {
1669 1678
         cb(results);
1670 1679
       },
1671 1680
 
1672
-      handleSelect(){
1673
-
1681
+      handleSelect(val){
1682
+        console.log("22222",val)
1683
+        this.drug_id = val.id
1684
+        this.nameForm.way = 1 
1685
+        console.log("hhhh23",this.drug_id) 
1686
+        console.log("hhhhhh",this.nameForm.way)
1674 1687
       },
1675 1688
       handleSelect1(){
1676 1689
 
@@ -1684,6 +1697,7 @@ export default {
1684 1697
   created(){
1685 1698
     //获取自备药
1686 1699
     this.getSelfMedicalList()
1700
+    console.log("模板数据",this.adviceTemplates)
1687 1701
   }
1688 1702
 };
1689 1703
 </script>

+ 1 - 1
src/xt_pages/dialysis/details/dialog/assessmentBeforeDislysisDialog.vue Просмотреть файл

@@ -566,7 +566,7 @@
566 566
           </el-col>
567 567
           
568 568
           <el-col :span="8">
569
-            <el-form-item label="预计进食量:" v-if="isShow('预计进食量')">
569
+            <el-form-item label="预计进食量(g):" v-if="isShow('预计进食量')">
570 570
              <el-input v-model="assessmentBeforeDislysis.estimated_food_intake"></el-input>
571 571
             </el-form-item>
572 572
           </el-col>

Разница между файлами не показана из-за своего большого размера
+ 1173 - 1017
src/xt_pages/dialysis/details/dialog/dialysisPrescriptionDialog.vue


+ 8 - 6
src/xt_pages/dialysis/details/dialog/monitor_dialog.vue Просмотреть файл

@@ -168,6 +168,7 @@
168 168
                   template_id == 38 ||
169 169
                   template_id == 39 ||
170 170
                   template_id == 40 ||
171
+                  template_id == 41 ||
171 172
                   org_id == 9555)
172 173
             "
173 174
           >
@@ -212,6 +213,7 @@
212 213
                 template_id != 38 &&
213 214
                 template_id != 39 &&
214 215
                 template_id != 40 &&
216
+                template_id != 41 &&
215 217
                 org_id!=9555
216 218
             "
217 219
           >
@@ -229,7 +231,7 @@
229 231
             align="center"
230 232
             label="超滤率(ml/h)"
231 233
             width="100"
232
-            v-if="isShow('超滤率') && (template_id == 6 || template_id == 10 || template_id == 11 || template_id == 12 || template_id == 13 || template_id == 17 || template_id == 18 || template_id == 19 || template_id == 20 || template_id == 21 || template_id == 22 || template_id == 23 || template_id == 24 || template_id == 26 || template_id == 29 || template_id == 30 || template_id == 31 || template_id == 34 || template_id == 35 || template_id == 38) "
234
+            v-if="isShow('超滤率') && (template_id == 6 || template_id == 10 || template_id == 11 || template_id == 12 || template_id == 13 || template_id == 17 || template_id == 18 || template_id == 19 || template_id == 20 || template_id == 21 || template_id == 22 || template_id == 23 || template_id == 24 || template_id == 26 || template_id == 29 || template_id == 30 || template_id == 31 || template_id == 34 || template_id == 35 || template_id == 38  || template_id == 41) "
233 235
           >
234 236
             <template slot-scope="scope">
235 237
               {{ scope.row.ultrafiltration_rate ? scope.row.ultrafiltration_rate : ""  }}
@@ -240,7 +242,7 @@
240 242
             align="center"
241 243
             label="超滤率(L/h)"
242 244
             width="100"
243
-            v-if="isShow('超滤率') && template_id != 6 && template_id != 10 && template_id != 11 && template_id != 12 && template_id != 13 && template_id != 17 && template_id != 18 && template_id != 19 && template_id != 20 && template_id != 21 && template_id != 22  && template_id != 23 && template_id != 24 && template_id != 26 && template_id != 29 && template_id != 30 && template_id != 31 && template_id != 34 && template_id != 35 && template_id != 38"
245
+            v-if="isShow('超滤率') && template_id != 6 && template_id != 10 && template_id != 11 && template_id != 12 && template_id != 13 && template_id != 17 && template_id != 18 && template_id != 19 && template_id != 20 && template_id != 21 && template_id != 22  && template_id != 23 && template_id != 24 && template_id != 26 && template_id != 29 && template_id != 30 && template_id != 31 && template_id != 34 && template_id != 35 && template_id != 38  && template_id != 41"
244 246
           >
245 247
             <template slot-scope="scope">
246 248
               {{ scope.row.ultrafiltration_rate ? scope.row.ultrafiltration_rate : ""  }}
@@ -578,12 +580,12 @@
578 580
             </el-form-item>
579 581
           </el-col>
580 582
 
581
-          <el-col :span="8" v-if="isShow('超滤率') && (template_id == 6 || template_id == 10 || template_id == 11 || template_id == 12 || template_id == 13 || template_id == 17 || template_id == 18 || template_id == 19 || template_id == 20 || template_id == 21 || template_id == 22 || template_id == 23 || template_id == 24 || template_id == 26 || template_id == 29 || template_id == 30 || template_id == 31 || template_id == 34 || template_id == 35) ">
583
+          <el-col :span="8" v-if="isShow('超滤率') && (template_id == 6 || template_id == 10 || template_id == 11 || template_id == 12 || template_id == 13 || template_id == 17 || template_id == 18 || template_id == 19 || template_id == 20 || template_id == 21 || template_id == 22 || template_id == 23 || template_id == 24 || template_id == 26 || template_id == 29 || template_id == 30 || template_id == 31 || template_id == 34 || template_id == 35 || template_id == 38 || template_id == 41) ">
582 584
             <el-form-item label="超滤率(ml/h)">
583 585
               <el-input v-model="form.ultrafiltration_rate"></el-input>
584 586
             </el-form-item>
585 587
           </el-col>
586
-          <el-col :span="8" v-if="isShow('超滤率') && template_id != 6 && template_id != 10 && template_id != 11 && template_id != 12 && template_id != 13 && template_id != 17 && template_id != 18 && template_id != 19 && template_id != 20 && template_id != 21 && template_id != 22 && template_id != 23 && template_id != 24 && template_id != 26 && template_id != 29 && template_id != 30 && template_id != 31 && template_id != 34 && template_id != 35">
588
+          <el-col :span="8" v-if="isShow('超滤率') && template_id != 6 && template_id != 10 && template_id != 11 && template_id != 12 && template_id != 13 && template_id != 17 && template_id != 18 && template_id != 19 && template_id != 20 && template_id != 21 && template_id != 22 && template_id != 23 && template_id != 24 && template_id != 26 && template_id != 29 && template_id != 30 && template_id != 31 && template_id != 34 && template_id != 35 && template_id != 38 && template_id != 41">
587 589
             <el-form-item label="超滤率(L/h)">
588 590
               <el-input v-model="form.ultrafiltration_rate"></el-input>
589 591
             </el-form-item>
@@ -591,7 +593,7 @@
591 593
 
592 594
           <el-col
593 595
             :span="8"
594
-            v-if=" isShow('超滤量') && (template_id == 6 || template_id == 9 || template_id == 10 || template_id == 11 || template_id == 12 || template_id == 13 || template_id == 17 || template_id == 18 || template_id == 19 || template_id == 20 || template_id == 21 || template_id == 22 || template_id == 23 || template_id == 24 || template_id == 26 || template_id == 27 || template_id == 29 || template_id == 30 || template_id == 31 || template_id == 32 || template_id == 34 || template_id == 35 || template_id == 36 || org_id == 9555) " >
596
+            v-if=" isShow('超滤量') && (template_id == 6 || template_id == 9 || template_id == 10 || template_id == 11 || template_id == 12 || template_id == 13 || template_id == 17 || template_id == 18 || template_id == 19 || template_id == 20 || template_id == 21 || template_id == 22 || template_id == 23 || template_id == 24 || template_id == 26 || template_id == 27 || template_id == 29 || template_id == 30 || template_id == 31 || template_id == 32 || template_id == 34 || template_id == 35 || template_id == 36 || template_id == 38 || template_id == 41 || org_id == 9555) " >
595 597
             <el-form-item label="超滤量(ml):">
596 598
               <el-input v-model="form.ultrafiltration_volume"></el-input>
597 599
             </el-form-item>
@@ -599,7 +601,7 @@
599 601
 
600 602
           <el-col
601 603
             :span="8"
602
-            v-if=" isShow('超滤量') && template_id != 6 && template_id !=9 && template_id != 10 && template_id != 11 && template_id != 12 && template_id != 13 && template_id != 17 && template_id != 18 && template_id != 19 && template_id != 20 && template_id != 21 && template_id != 22 && template_id != 23 && template_id != 24 && template_id != 26 && template_id!=27 && template_id!=29 && template_id!=30 && template_id!=31 && template_id!=32 && template_id!=34 && template_id!=35 && template_id!=36 && org_id !=9555" >
604
+            v-if=" isShow('超滤量') && template_id != 6 && template_id !=9 && template_id != 10 && template_id != 11 && template_id != 12 && template_id != 13 && template_id != 17 && template_id != 18 && template_id != 19 && template_id != 20 && template_id != 21 && template_id != 22 && template_id != 23 && template_id != 24 && template_id != 26 && template_id!=27 && template_id!=29 && template_id!=30 && template_id!=31 && template_id!=32 && template_id!=34 && template_id!=35 && template_id!=36 && template_id!=38  && template_id!=41 && org_id !=9555" >
603 605
             <el-form-item label="超滤量(L):">
604 606
               <el-input v-model="form.ultrafiltration_volume"></el-input>
605 607
             </el-form-item>

+ 4 - 4
src/xt_pages/dialysis/details/dialysisMonitoring.vue Просмотреть файл

@@ -14,10 +14,10 @@
14 14
           <th width="76px">静脉压/动脉压({{monitores[0]&&monitores[0]['venous_pressure_type'] == 2 ? 'kpa' : 'mmHg'}})</th>
15 15
           <th v-if="isShow('血流量')" width="92px">血流量(ml/min)</th>
16 16
           <th v-if="isShow('跨膜压')" width="76px">跨膜压({{monitores[0]&&monitores[0]['transmembrane_pressure_type'] == 2 ? 'kpa' : 'mmHg'}})</th>
17
-          <th v-if=" isShow('超滤量') &&(template_id == 6 || template_id == 9 || template_id == 10 || template_id == 11 || template_id == 13 || template_id == 17 || template_id == 18 || template_id == 19 || template_id == 20 || template_id == 21 || template_id == 22 || template_id == 23 || template_id == 24 || template_id == 26 || template_id == 27 || template_id == 28 || template_id == 29 || template_id == 30 || template_id == 31 || template_id == 32 || template_id == 34 || template_id == 35 || template_id == 36 || template_id == 38 || template_id == 39 || template_id == 40 || this.$store.getters.xt_user.template_info.org_id == 9555)" width="76px" > 超滤量(ml)</th>
18
-          <th v-if=" isShow('超滤量') && template_id != 6 && template_id != 9 && template_id != 10 && template_id != 11 && template_id != 13 && template_id != 17 && template_id != 18 && template_id != 19 && template_id != 20 && template_id != 21 && template_id != 22 && template_id != 23 && template_id != 24 && template_id != 26 && template_id !=27 && template_id!=28 && template_id!=29 && template_id!=30 && template_id!=31 && template_id!=32 && template_id!=34 && template_id!=35 && template_id!=36 && template_id!=38 && template_id != 39 && template_id != 40 && this.$store.getters.xt_user.template_info.org_id != 9555"  width="76px"> 超滤量(L) </th>
19
-          <th v-if="isShow('超滤率') && (template_id ==6 || template_id == 10 || template_id == 11 || template_id == 12 || template_id == 13 || template_id == 17 || template_id == 18 || template_id == 19 || template_id == 20 || template_id == 21 || template_id == 22 || template_id == 23 || template_id == 24 || template_id == 26 || template_id == 29 || template_id == 30 || template_id == 31 || template_id == 34 || template_id == 35 || template_id == 38)" width="50px"> 超滤率 <br />(ml/h) </th>
20
-          <th v-if="isShow('超滤率') && template_id !=6 && template_id !=10 && template_id !=11 && template_id !=12 && template_id !=13 && template_id !=17 && template_id !=18 && template_id !=19 && template_id !=20 && template_id !=21 && template_id !=22 && template_id !=23 && template_id !=24 && template_id !=26 && template_id !=29 && template_id !=30 && template_id !=31 && template_id !=34 && template_id !=35 && template_id !=38" width="50px"> 超滤率 <br />(L/h) </th>
17
+          <th v-if=" isShow('超滤量') &&(template_id == 6 || template_id == 9 || template_id == 10 || template_id == 11 || template_id == 13 || template_id == 17 || template_id == 18 || template_id == 19 || template_id == 20 || template_id == 21 || template_id == 22 || template_id == 23 || template_id == 24 || template_id == 26 || template_id == 27 || template_id == 28 || template_id == 29 || template_id == 30 || template_id == 31 || template_id == 32 || template_id == 34 || template_id == 35 || template_id == 36 || template_id == 38 || template_id == 39 || template_id == 40  || template_id == 41 || this.$store.getters.xt_user.template_info.org_id == 9555)" width="76px" > 超滤量(ml)</th>
18
+          <th v-if=" isShow('超滤量') && template_id != 6 && template_id != 9 && template_id != 10 && template_id != 11 && template_id != 13 && template_id != 17 && template_id != 18 && template_id != 19 && template_id != 20 && template_id != 21 && template_id != 22 && template_id != 23 && template_id != 24 && template_id != 26 && template_id !=27 && template_id!=28 && template_id!=29 && template_id!=30 && template_id!=31 && template_id!=32 && template_id!=34 && template_id!=35 && template_id!=36 && template_id!=38 && template_id != 39 && template_id != 40  && template_id != 41  && this.$store.getters.xt_user.template_info.org_id != 9555"  width="76px"> 超滤量(L) </th>
19
+          <th v-if="isShow('超滤率') && (template_id ==6 || template_id == 10 || template_id == 11 || template_id == 12 || template_id == 13 || template_id == 17 || template_id == 18 || template_id == 19 || template_id == 20 || template_id == 21 || template_id == 22 || template_id == 23 || template_id == 24 || template_id == 26 || template_id == 29 || template_id == 30 || template_id == 31 || template_id == 34 || template_id == 35 || template_id == 38 || template_id == 41)" width="50px"> 超滤率 <br />(ml/h) </th>
20
+          <th v-if="isShow('超滤率') && template_id !=6 && template_id !=10 && template_id !=11 && template_id !=12 && template_id !=13 && template_id !=17 && template_id !=18 && template_id !=19 && template_id !=20 && template_id !=21 && template_id !=22 && template_id !=23 && template_id !=24 && template_id !=26 && template_id !=29 && template_id !=30 && template_id !=31 && template_id !=34 && template_id !=35 && template_id !=38  && template_id !=41" width="50px"> 超滤率 <br />(L/h) </th>
21 21
           <th v-if="isShow('钠浓度')" width="92px">钠浓度(mmol/L)</th>
22 22
           <th v-if="isShow('透析液温度')" width="92px">透析液温度(℃)</th>
23 23
           <th v-if=" isShow('置换率') && (template_id == 6 || template_id == 10 || template_id == 11 || template_id == 20 || template_id == 26 || template_id == 29) " width="92px" > 置换率(ml/min) </th>

+ 49 - 4
src/xt_pages/dialysis/dialysisDoctorAdvice.vue Просмотреть файл

@@ -512,6 +512,46 @@ export default {
512 512
             console.log("列表数据",schedules)
513 513
             var config = resp.data.config
514 514
             console.log("config222222",config.is_open)
515
+            let project_config = resp.data.project_config
516
+            console.log('project_config',)
517
+            if(project_config.is_open == 1){
518
+              this.project = resp.data.project
519
+              resp.data.hisAdvices.map((item,index) => {
520
+                if(this.project[index].project.length > 0){
521
+                  this.project[index].project.map(it => {
522
+                    let obj = {
523
+                      advice_doctor: it.doctor,
524
+                      start_time:it.start_time,
525
+                      advice_name: it.type == 2 ? it.project.project_name : it.good_info.good_name,
526
+                      execution_time:it.execution_time,
527
+                      execution_state:it.execution_state,
528
+                      execution_staff:it.execution_staff,
529
+                      check_time:it.check_time,
530
+                      check_state:it.check_state,
531
+                      checker:it.checker,
532
+                      created_time:it.ctime,
533
+                      delivery_way:'',
534
+                      execution_frequency:'',
535
+                      remark:'',
536
+                      id:it.id,
537
+                      patient_id:it.patient_id,
538
+                      parent_id:0,
539
+                      groupno:0
540
+                    }
541
+                    // let advice = []
542
+                    // advice.push(obj)
543
+                    // let advices = {
544
+                    //   advices: advice,
545
+                    //   group_no: 123
546
+                    // }
547
+
548
+                //     // console.log(11111,item.new_advice)
549
+                    item.doctor_advice.push(obj)
550
+                  })
551
+                }
552
+              })
553
+            }
554
+            console.log('resp.data.hisAdvices',resp.data.hisAdvices)
515 555
            if(config.is_open == 0 || config.is_open == 2){
516 556
             this.show = true
517 557
             this.showOne = false
@@ -578,7 +618,7 @@ export default {
578 618
              this.show = false
579 619
              this.showOne  = true
580 620
             var schedules =  resp.data.hisAdvices
581
-          
621
+            console.log("hhhhhhhh22323232323232",schedules)
582 622
             let arr = []
583 623
             let newArr = []
584 624
             let newSchedules = []
@@ -638,7 +678,7 @@ export default {
638 678
             this.indexInfoList = newArr
639 679
            }
640 680
          }
641
-        //  console.log("列表22222",this.scheduleMap)
681
+         console.log("列表22222",this.indexInfoList)
642 682
         })
643 683
     },
644 684
     getValue: function(val) {
@@ -878,7 +918,7 @@ export default {
878 918
             tempSingleDoseDesc =
879 919
               ' 单次用量 ' + '  ' + row.single_dose + '' + row.single_dose_unit
880 920
           } else {
881
-            tempSingleDoseDesc = row.single_dose + '' + row.single_dose_unit
921
+            tempSingleDoseDesc = row.single_dose ? row.single_dose : '' + '' + row.single_dose_unit ? row.single_dose_unit : ''
882 922
           }
883 923
         }
884 924
 
@@ -887,7 +927,12 @@ export default {
887 927
         }
888 928
 
889 929
         if (isChild == 1) {
890
-          // 不是子药
930
+          // 不是子药 
931
+          console.log(tempDrugSpecDesc)
932
+          console.log(tempPrescribingNumberDesc)
933
+          console.log(tempSingleDoseDesc)
934
+          console.log(11,row.delivery_way)
935
+          console.log(22,row.execution_frequency)
891 936
 
892 937
           return (
893 938
             row.advice_name +

+ 24 - 0
src/xt_pages/dialysis/dialysisPrintOrder.vue Просмотреть файл

@@ -563,6 +563,16 @@
563 563
           >打印</el-button
564 564
         >
565 565
       </template>
566
+      <template v-if="org_template_info.template_id == 41">
567
+        <el-button
568
+          :loading="loading"
569
+          size="small"
570
+          icon="el-icon-printer"
571
+          @click="printThisPage"
572
+          type="primary"
573
+          >打印</el-button
574
+        >
575
+      </template>
566 576
     </div>
567 577
     <div class="app-container" style="min-height:0;">
568 578
       <!--<div class="order-print-btn"-->
@@ -843,6 +853,11 @@
843 853
             v-if="org_template_info.template_id == 40"
844 854
           >
845 855
           </DialysisPrintOrderForty>
856
+          <DialysisPrintOrderFortyOne
857
+            v-bind:childResponse="childResponse"
858
+            v-if="org_template_info.template_id == 41"
859
+          >
860
+          </DialysisPrintOrderFortyOne>
846 861
         </div>
847 862
       </el-container>
848 863
     </div>
@@ -902,9 +917,11 @@ import DialysisPrintOrderThirtySeven from "./template/DialysisPrintOrderThirtySe
902 917
 import DialysisPrintOrderThirtyEight from "./template/DialysisPrintOrderThirtyEight";
903 918
 import DialysisPrintOrderThirtyNine from "./template/DialysisPrintOrderThirtyNine";
904 919
 import DialysisPrintOrderForty from "./template/DialysisPrintOrderForty";
920
+import DialysisPrintOrderFortyOne from "./template/DialysisPrintOrderFortyOne";
905 921
 export default {
906 922
   name: "dialysisPrintOrder",
907 923
   components: {
924
+    DialysisPrintOrderFortyOne,
908 925
     DialysisPrintOrderForty,
909 926
     DialysisPrintOrderThirtyNine,
910 927
     DialysisPrintOrderThirtyEight,
@@ -1390,6 +1407,13 @@ export default {
1390 1407
           style: style5,
1391 1408
           scanStyles: false
1392 1409
         });
1410
+      } else if (this.org_template_info.template_id == 41){
1411
+        printJS({
1412
+          printable: "dialysis-print-box-1",
1413
+          type: "html",
1414
+          style: style2,
1415
+          scanStyles: false
1416
+        });
1393 1417
       }
1394 1418
     },
1395 1419
     printThisOnePage() {

+ 37 - 0
src/xt_pages/dialysis/doctorAdvicePrint.vue Просмотреть файл

@@ -285,6 +285,43 @@ export default {
285 285
                 if (resp.state == 1) {
286 286
                 this.admin_user = resp.data.adminUser
287 287
                 var config = resp.data.config
288
+                let project_config = resp.data.project_config
289
+                console.log('project_config',resp.data.project_config)
290
+                if(project_config.is_open == 1){
291
+                    this.project = resp.data.project
292
+                    resp.data.hisAdvices.map((item,index) => {
293
+                    item.new_advice = item.new_advice ? item.new_advice : []
294
+                    if(this.project[index].project.length > 0){
295
+                        this.project[index].project.map(it => {
296
+                        let obj = {
297
+                            advice_doctor: it.doctor,
298
+                            start_time:it.start_time,
299
+                            advice_name: it.type == 2 ? it.project.project_name : it.good_info.good_name,
300
+                            execution_time:it.execution_time,
301
+                            execution_state:it.execution_state,
302
+                            execution_staff:it.execution_staff,
303
+                            check_time:it.check_time,
304
+                            check_state:it.check_state,
305
+                            checker:it.checker,
306
+                            created_time:it.ctime,
307
+                            remark:'',
308
+                            id:it.id,
309
+                            parent_id:0,
310
+                            groupno:0
311
+                        }
312
+                        // let advice = []
313
+                        // advice.push(obj)
314
+                        // let advices = {
315
+                        //   advices: advice,
316
+                        //   group_no: 123
317
+                        // }
318
+
319
+                        // console.log(11111,item.new_advice)
320
+                        item.doctor_advice.push(obj)
321
+                        })
322
+                    }
323
+                    })
324
+                }
288 325
                 if(config.is_open == 0 || config.is_open == 2){
289 326
                 
290 327
                    var schedulesArr = resp.data.scheduals

+ 63 - 63
src/xt_pages/dialysis/template/DialysisPrintOrderForty.vue Просмотреть файл

@@ -506,7 +506,7 @@
506 506
                     &nbsp;{{ prescription.displace_liqui_value ? prescription.displace_liqui_value : "" }}
507 507
                   </div>
508 508
                 </td>
509
-                <td width="10">ml)</td>
509
+                <td width="10">L)</td>
510 510
                 <td width="50"><label-box :isChecked="prescription.mode_id != 5 && prescription.mode_id != 1 && prescription.mode_id != 2 ? true : false" showValue="其他"></label-box></td>
511 511
                 <td width="50">
512 512
                   <div class="under-line">&nbsp;
@@ -542,7 +542,7 @@
542 542
                 </td>
543 543
                 <td width="10">(</td>
544 544
                 <td width="35">首剂</td>
545
-                <td width="40">
545
+                <td width="50">
546 546
                     <div class="under-line">&nbsp;
547 547
                     <span v-if="prescription.anticoagulant==2">{{prescription.anticoagulant_shouji}}</span>
548 548
                     </div>
@@ -550,14 +550,14 @@
550 550
                 <td width="20">mg</td>
551 551
                 <td width="10"></td>
552 552
                 <td width="35">追加</td>
553
-                <td width="40">
553
+                <td width="50">
554 554
                     <div class="under-line">&nbsp;
555 555
                     <span v-if="prescription.anticoagulant==2">{{prescription.anticoagulant_weichi}}</span>
556 556
                     </div>
557 557
                 </td>
558 558
                 <td width="40">mg/h</td>
559 559
                 <td width="35">总量</td>
560
-                <td width="40">
560
+                <td width="50">
561 561
                     <div class="under-line">&nbsp;
562 562
                     <span v-if="prescription.anticoagulant==2">{{prescription.anticoagulant_zongliang}}</span>
563 563
                     </div>
@@ -2185,65 +2185,65 @@ export default {
2185 2185
             for (let index = 0; index < this.doctor_advices.length; index++) {
2186 2186
               this.doctor_advices[index]['isShow'] = 2
2187 2187
             }
2188
-            if (this.doctor_advices.length === 0) {
2189
-              var obj = { advice_name: '', start_time: '' }
2190
-              var obj1 = { advice_name: '', start_time: '' }
2191
-              var obj2 = { advice_name: '', start_time: '' }
2192
-              var obj3 = { advice_name: '', start_time: '' }
2193
-              this.doctor_advices.push(obj)
2194
-              this.doctor_advices.push(obj1)
2195
-              this.doctor_advices.push(obj2)
2196
-              this.doctor_advices.push(obj3)
2197
-              this.doctor_advices.push(obj3)
2198
-              this.doctor_advices.push(obj3)
2199
-              this.doctor_advices.push(obj3)
2200
-            }
2201
-            if (this.doctor_advices.length === 1) {
2202
-              var obj = { advice_name: '', start_time: '' }
2203
-              var obj1 = { advice_name: '', start_time: '' }
2204
-              var obj2 = { advice_name: '', start_time: '' }
2205
-              this.doctor_advices.push(obj)
2206
-              this.doctor_advices.push(obj1)
2207
-              this.doctor_advices.push(obj2)
2208
-              this.doctor_advices.push(obj2)
2209
-              this.doctor_advices.push(obj2)
2210
-              this.doctor_advices.push(obj2)
2211
-            }
2212
-            if (this.doctor_advices.length === 2) {
2213
-              var obj = { advice_name: '', start_time: '' }
2214
-              var obj1 = { advice_name: '', start_time: '' }
2215
-              this.doctor_advices.push(obj)
2216
-              this.doctor_advices.push(obj1)
2217
-              this.doctor_advices.push(obj1)
2218
-              this.doctor_advices.push(obj1)
2219
-              this.doctor_advices.push(obj1)
2220
-            }
2221
-            if (this.doctor_advices.length === 3) {
2222
-              // eslint-disable-next-line no-redeclare
2223
-              var obj = { advice_name: '', start_time: '' }
2224
-              this.doctor_advices.push(obj)
2225
-              this.doctor_advices.push(obj)
2226
-              this.doctor_advices.push(obj)
2227
-              this.doctor_advices.push(obj)
2228
-            }
2229
-            if (this.doctor_advices.length === 4) {
2230
-              // eslint-disable-next-line no-redeclare
2231
-              var obj = { advice_name: '', start_time: '' }
2232
-              this.doctor_advices.push(obj)
2233
-              this.doctor_advices.push(obj)
2234
-              this.doctor_advices.push(obj)
2235
-            }
2236
-            if (this.doctor_advices.length === 5) {
2237
-              // eslint-disable-next-line no-redeclare
2238
-              var obj = { advice_name: '', start_time: '' }
2239
-              this.doctor_advices.push(obj)
2240
-              this.doctor_advices.push(obj)
2241
-            }
2242
-            if (this.doctor_advices.length === 6) {
2243
-              // eslint-disable-next-line no-redeclare
2244
-              var obj = { advice_name: '', start_time: '' }
2245
-              this.doctor_advices.push(obj)
2246
-            }
2188
+            // if (this.doctor_advices.length === 0) {
2189
+            //   var obj = { advice_name: '', start_time: '' }
2190
+            //   var obj1 = { advice_name: '', start_time: '' }
2191
+            //   var obj2 = { advice_name: '', start_time: '' }
2192
+            //   var obj3 = { advice_name: '', start_time: '' }
2193
+            //   this.doctor_advices.push(obj)
2194
+            //   this.doctor_advices.push(obj1)
2195
+            //   this.doctor_advices.push(obj2)
2196
+            //   this.doctor_advices.push(obj3)
2197
+            //   this.doctor_advices.push(obj3)
2198
+            //   this.doctor_advices.push(obj3)
2199
+            //   this.doctor_advices.push(obj3)
2200
+            // }
2201
+            // if (this.doctor_advices.length === 1) {
2202
+            //   var obj = { advice_name: '', start_time: '' }
2203
+            //   var obj1 = { advice_name: '', start_time: '' }
2204
+            //   var obj2 = { advice_name: '', start_time: '' }
2205
+            //   this.doctor_advices.push(obj)
2206
+            //   this.doctor_advices.push(obj1)
2207
+            //   this.doctor_advices.push(obj2)
2208
+            //   this.doctor_advices.push(obj2)
2209
+            //   this.doctor_advices.push(obj2)
2210
+            //   this.doctor_advices.push(obj2)
2211
+            // }
2212
+            // if (this.doctor_advices.length === 2) {
2213
+            //   var obj = { advice_name: '', start_time: '' }
2214
+            //   var obj1 = { advice_name: '', start_time: '' }
2215
+            //   this.doctor_advices.push(obj)
2216
+            //   this.doctor_advices.push(obj1)
2217
+            //   this.doctor_advices.push(obj1)
2218
+            //   this.doctor_advices.push(obj1)
2219
+            //   this.doctor_advices.push(obj1)
2220
+            // }
2221
+            // if (this.doctor_advices.length === 3) {
2222
+            //   // eslint-disable-next-line no-redeclare
2223
+            //   var obj = { advice_name: '', start_time: '' }
2224
+            //   this.doctor_advices.push(obj)
2225
+            //   this.doctor_advices.push(obj)
2226
+            //   this.doctor_advices.push(obj)
2227
+            //   this.doctor_advices.push(obj)
2228
+            // }
2229
+            // if (this.doctor_advices.length === 4) {
2230
+            //   // eslint-disable-next-line no-redeclare
2231
+            //   var obj = { advice_name: '', start_time: '' }
2232
+            //   this.doctor_advices.push(obj)
2233
+            //   this.doctor_advices.push(obj)
2234
+            //   this.doctor_advices.push(obj)
2235
+            // }
2236
+            // if (this.doctor_advices.length === 5) {
2237
+            //   // eslint-disable-next-line no-redeclare
2238
+            //   var obj = { advice_name: '', start_time: '' }
2239
+            //   this.doctor_advices.push(obj)
2240
+            //   this.doctor_advices.push(obj)
2241
+            // }
2242
+            // if (this.doctor_advices.length === 6) {
2243
+            //   // eslint-disable-next-line no-redeclare
2244
+            //   var obj = { advice_name: '', start_time: '' }
2245
+            //   this.doctor_advices.push(obj)
2246
+            // }
2247 2247
             this.adviceLength = this.doctor_advices.length + 1
2248 2248
 
2249 2249
             if (this.doctor_advices.length > 0) {

Разница между файлами не показана из-за своего большого размера
+ 1719 - 0
src/xt_pages/dialysis/template/DialysisPrintOrderFortyOne.vue


+ 1 - 1
src/xt_pages/dialysis/template/DialysisPrintOrderSeventeen.vue Просмотреть файл

@@ -1465,7 +1465,7 @@ export default {
1465 1465
           this.afterdialysis = afterdialysis
1466 1466
           // eslint-disable-next-line no-unused-vars
1467 1467
           var doctoradvce = response.data.data.doctorAdvice
1468
-          var doctorAdevieInfo = response.data.data.doctorAdevieInfo
1468
+          var doctorAdevieInfo = JSON.parse(JSON.stringify(response.data.data.advices))
1469 1469
           this.newTableAdvice = response.data.data.doctorAdevieInfo
1470 1470
           console.log('哈哈哈哈哈哈哈哈哈', this.newTableAdvice)
1471 1471
           var tableAdvice = doctorAdevieInfo

+ 4 - 2
src/xt_pages/dialysis/template/DialysisPrintOrderSix.vue Просмотреть файл

@@ -47,13 +47,15 @@
47 47
         <div class="inline_block">
48 48
           病区:
49 49
           <div class="under_line" style="width: 50px;text-align: center;">
50
-            {{ "/" }}
50
+            <span v-if="org_id == 10121">{{ patientInfo.DialysisSchedule.device_zone.name ? patientInfo.DialysisSchedule.device_zone.name : '' }}</span>
51
+            <span v-else>{{ "/" }}</span>
51 52
           </div>
52 53
         </div>
53 54
         <div class="inline_block">
54 55
           床号:
55 56
           <div class="under_line" style="width: 50px;text-align: center;">
56
-            {{ "/" }}
57
+            <span v-if="org_id == 10121">{{ dialysisOrder && dialysisOrder.DeviceNumber && dialysisOrder.DeviceNumber.number.length > 0 ? dialysisOrder.DeviceNumber.number : patientInfo.DialysisSchedule.device_number.number }}</span>
58
+            <span v-else>{{ "/" }}</span>
57 59
           </div>
58 60
         </div>
59 61
         <div class="inline_block">

+ 2 - 0
src/xt_pages/dialysis/template/DialysisPrintOrderTen.vue Просмотреть файл

@@ -487,6 +487,7 @@
487 487
                     </tr>
488 488
                     <tr>
489 489
                       <td width="60">时间</td>
490
+                      <td width="50">体温<br />°C</td>
490 491
                       <td width="60">血压<br />(mmHg)</td>
491 492
                       <td width="50">脉搏<br />(次/分)</td>
492 493
                       <td width="50">呼吸<br />(次/分)</td>
@@ -517,6 +518,7 @@
517 518
 
518 519
                     <tr v-for="(monitor, monindex) in monitors" :key="monindex">
519 520
                       <td>{{ getTime(monitor.operate_time, "{h}:{i}") }}</td>
521
+                      <td>{{ monitor.temperature ? monitor.temperature : "" }}</td>
520 522
                       <td>
521 523
                         {{ monitor.systolic_blood_pressure ? monitor.systolic_blood_pressure + "/" : "" }}
522 524
                         {{ monitor.diastolic_blood_pressure ? monitor.diastolic_blood_pressure : "" }}

+ 2 - 2
src/xt_pages/dialysis/template/DialysisPrintOrderThirteen.vue Просмотреть файл

@@ -236,7 +236,7 @@
236 236
               预设脱水
237 237
               <div class="inline_block under_line" style="width:100px;">
238 238
                   {{ prescription.target_ultrafiltration ? prescription.target_ultrafiltration : ' ' }}
239
-              </div>kg
239
+              </div>L
240 240
           </div>
241 241
       </div>
242 242
       <div class="row">
@@ -259,7 +259,7 @@
259 259
               实际脱水
260 260
               <div class="inline_block under_line" style="width:100px;">
261 261
                   {{ afterdialysis.actual_ultrafiltration ? afterdialysis.actual_ultrafiltration : " " }}
262
-              </div>kg
262
+              </div>L
263 263
           </div>
264 264
       </div>
265 265
       <div class="row">

+ 45 - 39
src/xt_pages/dialysis/template/DialysisPrintOrderThirtyEight.vue Просмотреть файл

@@ -14,9 +14,9 @@
14 14
       <div class="lineHeight">基本信息</div>
15 15
       <div class="lineHeight">
16 16
           <div class="widthLength25">年龄:{{ getAge(patientInfo) }}</div>
17
-          <div class="widthLength25">透析年龄:{{ patientInfo.dialysis_age ? patientInfo.dialysis_age : '/' }}月</div>
17
+          <div class="widthLength25">透析年龄:{{ patientInfo.first_dialysis_date ? getMonths(patientInfo.first_dialysis_date) : '/' }}月</div>
18 18
           <div class="widthLength25">入院方式:{{ receiverTreatmentAccess.way ? receiverTreatmentAccess.way : '/' }}</div>
19
-          <div class="widthLength25">累计:{{ patientInfo.total_dialysis + patientInfo.user_sys_before_count }}</div>
19
+          <div class="widthLength25">累计:{{ patientInfo.total_dialysis + patientInfo.user_sys_before_count }}</div>
20 20
       </div>
21 21
       <div class="lineHeight">
22 22
           <div class="widthLength25">首次透析时间:{{ patientInfo.first_treatment_date ? getTime(patientInfo.first_treatment_date ? patientInfo.first_treatment_date : 0, "{y}-{m}-{d}") : '/' }}</div>
@@ -85,7 +85,7 @@
85 85
           <div class="widthLength25">附加重物量:{{ predialysis.additional_weight ? predialysis.additional_weight : 0 }} Kg</div>
86 86
           <div class="widthLength25">透前体重:{{ predialysis.weight_before ? predialysis.weight_before : "" }} Kg</div>
87 87
           <div class="widthLength25">干体重:{{ predialysis.dry_weight ? predialysis.dry_weight : "" }} Kg</div>
88
-          <div class="widthLength25">预计进食量:{{ predialysis.estimated_food_intake ? predialysis.estimated_food_intake : '无' }}</div>
88
+          <div class="widthLength25">预计进食量:{{ predialysis.estimated_food_intake ? predialysis.estimated_food_intake + ' g' : '无' }}</div>
89 89
       </div>
90 90
       <div class="lineHeight">
91 91
           其他:{{ predialysis.remark ? predialysis.remark : '' }}
@@ -111,7 +111,8 @@
111 111
       <div class="lineHeight">
112 112
           <div class="widthLength25">实际进食量:{{ afterdialysis.dialysis_during ? afterdialysis.dialysis_during : '' }} g</div>
113 113
           <div class="widthLength25">透后体重:{{ afterdialysis.weight_after ? afterdialysis.weight_after : "" }} Kg</div>
114
-          <div class="widthLength25">脉搏:{{ afterdialysis.weight_after ? afterdialysis.weight_after : "" }} 次/分</div>
114
+          <div class="widthLength25">脉搏:{{ afterdialysis.pulse_frequency ? afterdialysis.pulse_frequency : "" }} 次/分</div>
115
+          <div class="widthLength25"></div>
115 116
       </div>
116 117
       <div class="lineHeight">治疗方案:</div>
117 118
       <div class="lineHeight">
@@ -169,7 +170,6 @@
169 170
             <td colspan="3" style="width:130px;height:40px">执行时间</td>
170 171
             <td colspan="2" style="width:130px;height:40px">核对护士</td>
171 172
             <td colspan="2" style="width:108px;height:40px">执行护士</td>
172
-            <td colspan="2" style="width:108px;height:40px">带教学生</td>
173 173
           </tr>
174 174
 
175 175
           <tr v-for="(advice, advice_index) in tableAdvice" style="height:30px">
@@ -211,7 +211,6 @@
211 211
               </span>
212 212
               <img style="height:20px;" :src="setAdminUserES(advice.execution_staff)" alt srcset v-else />
213 213
             </td>
214
-            <td colspan="2"><span v-if="advice.start_time">无</span></td>
215 214
           </tr>
216 215
         </tbody>
217 216
       </table>
@@ -260,9 +259,8 @@
260 259
               <img class="es-img" style="height:20px;" :src="setAdminUserES(dialysisOrder==null?0:dialysisOrder.start_nurse)" alt="" srcset="" v-else>
261 260
             </span>
262 261
           </div>
263
-          <div style="width:16%;">学生:无</div>
264 262
       </div>
265
-      <div class="lineHeight">治疗过程中检测记录:血压检测部位:{{ monitors && monitors[0] ? monitors[0].blood_pressure_monitoring_site : '' }}</div>
263
+      <div class="lineHeight">治疗过程中检测记录:血压检测部位:{{ monitors && monitors[0] ? getBloodPressureMmonitoringSite(monitors[0].blood_pressure_monitoring_site) : '' }}</div>
266 264
       <table class="print-table" border="1">
267 265
         <tbody>
268 266
           <tr>
@@ -300,7 +298,7 @@
300 298
             <td>&nbsp;{{ monitor.transmembrane_pressure ? monitor.transmembrane_pressure : "" }}</td>
301 299
             <td>&nbsp;{{ monitor.ultrafiltration_rate ? monitor.ultrafiltration_rate : "" }}</td>
302 300
             <td>&nbsp;{{ monitor.ultrafiltration_volume ? monitor.ultrafiltration_volume : "" }}</td>
303
-            <td>&nbsp;{{ monitor.complication ? monitor.complication : "" }}</td>
301
+            <td>&nbsp;{{ monitor.complication ? getComplication(monitor.complication) : "" }}</td>
304 302
             <td style="text-align:left;padding-left:10px;">
305 303
               <div v-if="monitor.operate_time" style="line-height:20px;text-align: left;display: inline-block;">
306 304
                 {{ monitor.dispose ? monitor.dispose : '无' }}
@@ -331,7 +329,7 @@
331 329
           <div class="widthLength25">实际治疗时长:{{ afterdialysis.actual_treatment_hour ? afterdialysis.actual_treatment_hour : 0 }}小时
332 330
             {{ afterdialysis.actual_treatment_minute ? afterdialysis.actual_treatment_minute : 0 }}分钟
333 331
           </div>
334
-          <div class="widthLength25">静脉管道:
332
+          <!-- <div class="widthLength25">静脉管道:
335 333
             <span v-if="afterdialysis.intravenous_tube == 1">0级</span>
336 334
             <span v-if="afterdialysis.intravenous_tube == 2">I级</span>
337 335
             <span v-if="afterdialysis.intravenous_tube == 3">Ⅱ级</span>
@@ -342,8 +340,10 @@
342 340
             <span v-if="afterdialysis.arterial_tube == 2">I级</span>
343 341
             <span v-if="afterdialysis.arterial_tube == 3">Ⅱ级</span>
344 342
             <span v-if="afterdialysis.arterial_tube == 4">Ⅲ级</span>
345
-          </div>
343
+          </div> -->
346 344
           <div class="widthLength25">透析器凝血:{{ afterdialysis.cruor ? afterdialysis.cruor : "" }}</div>
345
+          <div class="widthLength25"></div>
346
+          <div class="widthLength25"></div>
347 347
           
348 348
       </div>
349 349
       <div class="lineHeight">
@@ -413,8 +413,6 @@
413 413
               <img class="es-img" style="height:20px;" :src="setAdminUserES(dialysisOrder==null?0:dialysisOrder.finish_nurse)" alt="" srcset="" v-else>
414 414
             </span>
415 415
           </div>
416
-          <div style="width:16%;">学生:无</div>
417
-          <div style="width:16%;">带教老师:无</div>
418 416
       </div>
419 417
       <div class="lineHeight">
420 418
           病程记录:
@@ -573,10 +571,40 @@ export default {
573 571
         finish_nurse: "",
574 572
         url: ""
575 573
       },
576
-      displaceLiquiPartOptions: []
574
+      displaceLiquiPartOptions: [],
575
+      complicationList:[],
576
+      bloodPressureMmonitoringSite:[]
577 577
     };
578 578
   },
579 579
   methods: {
580
+    getMonths(t){
581
+      var ot=new Date(t); //转为时间对象(js的时间戳是毫秒数)
582
+      var oy=ot.getFullYear(); //年
583
+      var om=ot.getMonth()+1; //月
584
+      var tt=new Date(); //今天
585
+      var ty=tt.getFullYear(); //今天年
586
+      var tm=tt.getMonth()+1; //今天月
587
+      var gm=(ty-oy)*12+(tm-om); //距今月数
588
+      return gm
589
+    },
590
+    getBloodPressureMmonitoringSite(id){
591
+      var name = "";
592
+      for(let i=0;i<this.bloodPressureMmonitoringSite.length;i++){
593
+         if(id == this.bloodPressureMmonitoringSite[i].id){
594
+            name = this.bloodPressureMmonitoringSite[i].name
595
+         }
596
+      }
597
+      return name
598
+    },
599
+    getComplication(id){
600
+      var name = "";
601
+      for(let i=0;i<this.complicationList.length;i++){
602
+         if(id == this.complicationList[i].id){
603
+            name = this.complicationList[i].name
604
+         }
605
+      }
606
+      return name
607
+    },
580 608
     getDisplaceLiquiPart: function(val) {
581 609
       let displace_liqui_part_name = "/";
582 610
       const displace_liqui_part = this.displaceLiquiPartOptions;
@@ -727,7 +755,7 @@ export default {
727 755
           this.assessmentafter = response.data.data.assessmentAfterDislysis;
728 756
           console.log("上次透后体重", this.assessmentafter);
729 757
           var doctorAdevieInfo = response.data.data.doctorAdevieInfo;
730
-          var doctorAdevieInfo = response.data.data.advices;
758
+          var doctorAdevieInfo = JSON.parse(JSON.stringify(response.data.data.advices))
731 759
           var tableAdvice = doctorAdevieInfo;
732 760
           console.log("医生", tableAdvice);
733 761
           if (tableAdvice.length === 0) {
@@ -883,30 +911,6 @@ export default {
883 911
           if (prescription.anticoagulant == 7) {
884 912
             prescription.anticoagulant = "低分子肝素钠";
885 913
           }
886
-          if (prescription.blood_access === 1) {
887
-            prescription.blood_access = "正常";
888
-          }
889
-          if (prescription.blood_access === 2) {
890
-            prescription.blood_access = "震颤";
891
-          }
892
-          if (prescription.blood_access === 3) {
893
-            prescription.blood_access = "堵塞";
894
-          }
895
-          if (prescription.blood_access === 4) {
896
-            prescription.blood_access = "血肿";
897
-          }
898
-          if (prescription.blood_access === 5) {
899
-            prescription.blood_access = "淤血";
900
-          }
901
-          if (prescription.blood_access === 6) {
902
-            prescription.blood_access = "感染";
903
-          }
904
-          if (prescription.blood_access === 7) {
905
-            prescription.blood_access = "自体内瘘";
906
-          }
907
-          if (prescription.blood_access === 8) {
908
-            prescription.blood_access = "人工血管内瘘";
909
-          }
910 914
           if (prescription.replacement_way === 1) {
911 915
             prescription.replacement_way = "前置换";
912 916
           }
@@ -1303,6 +1307,8 @@ export default {
1303 1307
     this.lapse_arr = getDataConfig("hemodialysis", "lapse");
1304 1308
     this.displaceLiquiPartOptions = this.$store.getters.displace_liqui;
1305 1309
     // this.bloodAccessParOpera = getDataConfig('hemodialysis', 'vascular_access_desc')
1310
+    this.complicationList = getDataConfig('hemodialysis','complication')
1311
+    this.bloodPressureMmonitoringSite = getDataConfig('hemodialysis','blood_pressure_monitoring_site');
1306 1312
 
1307 1313
     var bloodAccessParOpera = getDataConfig(
1308 1314
       "hemodialysis",

+ 18 - 10
src/xt_pages/dialysis/template/DialysisPrintOrderThirtyFive.vue Просмотреть файл

@@ -72,14 +72,15 @@
72 72
                 L
73 73
               </span>
74 74
75
-              <label-box :isChecked="prescription.mode_id > 2 ? true : false" showValue="其他:"></label-box>
75
+              <label-box :isChecked="prescription.mode_id == 9 ? true : false" showValue="HFHD+HP"></label-box>&nbsp;
76
+              <label-box :isChecked="prescription.mode_id > 2 && prescription.mode_id != 9 ? true : false" showValue="其他:"></label-box>
76 77
               <span v-if="prescription.mode_id == 3">{{ prescription.mode_id == 3 ? "HD+HP" : "" }}</span>
77 78
               <span v-if="prescription.mode_id == 4">{{ prescription.mode_id == 4 ? "HP" : "" }}</span>
78 79
               <span v-if="prescription.mode_id == 5">{{ prescription.mode_id == 5 ? "HF" : "" }}</span>
79 80
               <span v-if="prescription.mode_id == 6">{{ prescription.mode_id == 6 ? "SCUF" : "" }}</span>
80 81
               <span v-if="prescription.mode_id == 7">{{ prescription.mode_id == 7 ? "IUF" : "" }}</span>
81 82
               <span v-if="prescription.mode_id == 8">{{ prescription.mode_id == 8 ? "HFHD" : "" }}</span>
82
-              <span v-if="prescription.mode_id == 9">{{ prescription.mode_id == 9 ? "HFHD+HP" : "" }}</span>
83
+              <!-- <span v-if="prescription.mode_id == 9">{{ prescription.mode_id == 9 ? "HFHD+HP" : "" }}</span> -->
83 84
               <span v-if="prescription.mode_id == 10">{{ prescription.mode_id == 10 ? "PHF" : "" }}</span>
84 85
               <span v-if="prescription.mode_id == 11">{{ prescription.mode_id == 11 ? "HFR" : "" }}</span>
85 86
               <span v-if="prescription.mode_id == 12">{{ prescription.mode_id == 12 ? "HDF+HP" : "" }}</span>
@@ -112,7 +113,7 @@
112 113
               <span v-if="prescription.anticoagulant == '普通肝素'">iu</span>
113 114
               <span v-if="prescription.anticoagulant == '无肝素'">mg</span>
114 115
               <span v-if="prescription.anticoagulant == '低分子肝素钙'">iu</span>
115
-              <span v-if="prescription.anticoagulant == '低分子肝素钠'">iu</span>&nbsp; 
116
+              <span v-if="prescription.anticoagulant == '低分子肝素钠'">iu</span>&nbsp;
116 117
               追加:
117 118
               <span style="width:35px;display: inline-block;">
118 119
                 {{ prescription.anticoagulant_weichi && prescription.anticoagulant == "普通肝素" ? prescription.anticoagulant_weichi : "" }}
@@ -191,7 +192,7 @@
191 192
               <label-box :isChecked="predialysis.blood_access_part_opera_name.indexOf('颈内静脉') > -1 ? true : false" showValue="临时颈内静脉导管"></label-box>&nbsp;
192 193
               <label-box :isChecked="predialysis.blood_access_part_opera_name.indexOf('股静脉') > -1 ? true : false" showValue="临时股静脉导管"></label-box>&nbsp;
193 194
               <label-box :isChecked="predialysis.blood_access_part_opera_name.indexOf('人造血管') > -1 ? true : predialysis.blood_access_part_opera_name.indexOf('移植血管') > -1 ? true : false" showValue="其他"></label-box>&nbsp;
194
-              
195
+
195 196
               穿刺方式:
196 197
               <span style="width:60px;display: inline-block;">
197 198
                 {{ predialysis.puncture_way ? predialysis.puncture_way : "" }}
@@ -681,6 +682,7 @@
681 682
             <td colspan="2" style="width:110px;height:40px">医生签名</td>
682 683
 
683 684
             <td colspan="2" style="width:108px;height:40px">执行</td>
685
+            <td colspan="2" style="width:108px;height:40px">核对</td>
684 686
             <td colspan="3" style="width:130px;height:40px">执行时间</td>
685 687
             <!-- <td style="width:60px;height:60px">
686 688
               <p style="height:20px;line-height:20px">核对</p>
@@ -726,6 +728,12 @@
726 728
               </span>
727 729
               <img style="height:30px;" :src="setAdminUserES(advice.execution_staff)" alt srcset v-else />
728 730
             </td>
731
+            <td colspan="2" style="height:40px">
732
+              <span v-if="setAdminUserES(advice.checker) == ''">
733
+                {{ getAdminUser(advice.checker) }}
734
+              </span>
735
+              <img style="height:30px;" :src="setAdminUserES(advice.checker)" alt srcset v-else />
736
+            </td>
729 737
             <td colspan="3" style="width:130px;">
730 738
               {{ getTime(advice.execution_time, "{y}-{m}-{d} {h}:{i}") }}
731 739
             </td>
@@ -830,7 +838,7 @@
830 838
             <td width="100" style="border:none;padding-left:5px;">
831 839
               透析器凝血:
832 840
             </td>
833
-            <td width="100" style="text-align:left;border:none;">
841
+            <td style="text-align:left;border:none;">
834 842
               <div>
835 843
                 <span style="width:100px;display:inline-block;border:none;">
836 844
                   {{ afterdialysis.cruor ? afterdialysis.cruor : "" }}
@@ -839,7 +847,7 @@
839 847
             </td>
840 848
             <!-- <td width="10" style="border:none;"></td> -->
841 849
 
842
-            <td width="70" style="border:none;padding-left:5px;">内瘘:</td>
850
+            <!-- <td width="70" style="border:none;padding-left:5px;">内瘘:</td>
843 851
             <td width="200" style="text-align:left;border:none;line-height: 30px;">
844 852
               <div>
845 853
                 <span style="width:200px;display:inline-block">
@@ -854,7 +862,7 @@
854 862
                   {{ afterdialysis.catheter ? afterdialysis.catheter : "" }}
855 863
                 </span>
856 864
               </div>
857
-            </td>
865
+            </td> -->
858 866
           </tr>
859 867
         </tbody>
860 868
       </table>
@@ -1360,14 +1368,14 @@ export default {
1360 1368
           this.adminUser = response.data.data.users;
1361 1369
           this.users = response.data.data.users;
1362 1370
           var patientInfo = response.data.data.patientInfo;
1363
-          console.log("烧腊店就拉萨讲道理看", patientInfo);
1371
+          // console.log("烧腊店就拉萨讲道理看", patientInfo);
1364 1372
           if (patientInfo.gender === 1) {
1365 1373
             patientInfo.gender = "男";
1366 1374
           }
1367 1375
           if (patientInfo.gender === 2) {
1368 1376
             patientInfo.gender = "女";
1369 1377
           }
1370
-          console.log("patientInfo", patientInfo);
1378
+          // console.log("patientInfo", patientInfo);
1371 1379
           this.patientInfo = patientInfo;
1372 1380
           this.patientInfo.birth = uParseTime(
1373 1381
             this.patientInfo.birthday,
@@ -1383,7 +1391,7 @@ export default {
1383 1391
             this.patientInfo.first_dialysis_date = "";
1384 1392
           }
1385 1393
           this.check = response.data.data.check;
1386
-          console.log("核对信息", this.check);
1394
+          // console.log("核对信息", this.check);
1387 1395
           this.predialysis = response.data.data.PredialysisEvaluation;
1388 1396
           console.log("透前评估", this.predialysis);
1389 1397
           this.predialysis.blood_access_part_opera_name = this.bloodAccessParOperaName(

+ 1 - 1
src/xt_pages/dialysis/template/DialysisPrintOrderThirtyNine.vue Просмотреть файл

@@ -318,7 +318,7 @@
318 318
                         <td width="80">VP<br>mmHg</td>
319 319
                         <td width="80">TMP<br>mmHg</td>
320 320
                         <td width="80">Na<br>mmol/L</td>
321
-                        <td width="80">UF<br>ml</td>
321
+                        <td width="80">UF<br>L</td>
322 322
                         <td width="80">体温</td>
323 323
                         <td width="">备注</td>
324 324
                         <td width="80">签名</td>

+ 1 - 1
src/xt_pages/dialysis/template/DialysisPrintOrderThirtyOne.vue Просмотреть файл

@@ -139,7 +139,7 @@
139 139
           (<label-box :isChecked="predialysis.blood_access_part_opera_name.indexOf('内瘘-左') > -1 ? true : false" showValue="左"></label-box>
140 140
               <label-box :isChecked="predialysis.blood_access_part_opera_name.indexOf('内瘘-右') > -1 ? true : false" showValue="右"></label-box>)
141 141
           &nbsp;
142
-          <label-box :isChecked="predialysis.blood_access_part_opera_name.indexOf('中心静脉置管-左-颈内') > -1 ? true : predialysis.blood_access_part_opera_name.indexOf('中心静脉置管-左-锁骨下') > -1 ? true : predialysis.blood_access_part_opera_name.indexOf('中心静脉置管-左-股') > -1 ? true : predialysis.blood_access_part_opera_name.indexOf('中心静脉置管-右-颈内') > -1 ? true : predialysis.blood_access_part_opera_name.indexOf('中心静脉置管-右-锁骨下') > -1 ? true : predialysis.blood_access_part_opera_name.indexOf('中心静脉置管-右-股') > -1 ? true : false" showValue="中心静脉置管"></label-box>
142
+          <label-box :isChecked="predialysis.blood_access_part_opera_name.indexOf('中心静脉置管-左-颈内') > -1 ? true : predialysis.blood_access_part_opera_name.indexOf('中心静脉置管-左-锁骨下') > -1 ? true : predialysis.blood_access_part_opera_name.indexOf('中心静脉置管-左-股') > -1 ? true : predialysis.blood_access_part_opera_name.indexOf('中心静脉置管-右-颈内') > -1 ? true : predialysis.blood_access_part_opera_name.indexOf('中心静脉置管-右-锁骨下') > -1 ? true : predialysis.blood_access_part_opera_name.indexOf('中心静脉置管-右-股') > -1 ? true : predialysis.blood_access_part_opera_name.indexOf('中心静脉置管-右') > -1 ? true : predialysis.blood_access_part_opera_name.indexOf('中心静脉置管-左') > -1 ? true : false" showValue="中心静脉置管"></label-box>
143 143
           (<label-box :isChecked="predialysis.blood_access_part_opera_name.indexOf('中心静脉置管-左-颈内') > -1 ? true : predialysis.blood_access_part_opera_name.indexOf('中心静脉置管-左-锁骨下') > -1 ? true : predialysis.blood_access_part_opera_name.indexOf('中心静脉置管-左-股') > -1 ? true : false" showValue="左"></label-box>
144 144
               <label-box :isChecked="predialysis.blood_access_part_opera_name.indexOf('中心静脉置管-右-颈内') > -1 ? true : predialysis.blood_access_part_opera_name.indexOf('中心静脉置管-右-锁骨下') > -1 ? true : predialysis.blood_access_part_opera_name.indexOf('中心静脉置管-右-股') > -1 ? true : false" showValue="右"></label-box>)部位
145 145
           &nbsp;

+ 177 - 0
src/xt_pages/dialysis/template/DialysisPrintOrderTwentyFour.vue Просмотреть файл

@@ -1340,6 +1340,183 @@
1340 1340
           </tr>
1341 1341
         </tbody>
1342 1342
       </table>
1343
+      <table class="print-table" border="1">
1344
+        <tbody>
1345
+          <tr>
1346
+            <td class="title-box" width="30px">透后评估</td>
1347
+            <td>
1348
+              <table class="table-box">
1349
+                <tbody>
1350
+                  <tr>
1351
+                    <td width="90">实际治疗时间</td>
1352
+                    <td width="40">
1353
+                      <div class="under-line">
1354
+                        &nbsp;{{ afterdialysis.actual_treatment_hour ? afterdialysis.actual_treatment_hour : "0" }}
1355
+                      </div>
1356
+                    </td>
1357
+                    <td width="10">h</td>
1358
+                    <td width="40">
1359
+                      <div class="under-line">
1360
+                        &nbsp;{{ afterdialysis.actual_treatment_minute ? afterdialysis.actual_treatment_minute : "0" }}
1361
+                      </div>
1362
+                    </td>
1363
+                    <td width="35">min</td>
1364
+                    <td></td>
1365
+                    <td width="75">实际超滤量</td>
1366
+                    <td width="70">
1367
+                      <div class="under-line">
1368
+                        &nbsp;{{ afterdialysis.actual_ultrafiltration ? afterdialysis.actual_ultrafiltration : "" }}
1369
+                      </div>
1370
+                    </td>
1371
+                    <td width="20">ml</td>
1372
+                    <td></td>
1373
+                    <td width="60">透后体重</td>
1374
+                    <td width="50">
1375
+                      <div class="under-line">
1376
+                        &nbsp;{{ afterdialysis.weight_after ? afterdialysis.weight_after : "" }}
1377
+                      </div>
1378
+                    </td>
1379
+                    <td width="20">Kg</td>
1380
+                    <td width='20'></td>
1381
+                    <td width='100'>血管杂音及震颤</td>
1382
+                    <td width='160'>
1383
+                        <label-box :isChecked="afterdialysis.internal_fistula&&afterdialysis.internal_fistula.indexOf('震颤-存在') > -1 ? true : false" showValue="存在"></label-box>
1384
+                        &nbsp;
1385
+                        <label-box :isChecked="afterdialysis.internal_fistula&&afterdialysis.internal_fistula.indexOf('震颤-减弱') > -1 ? true : false" showValue="减弱"></label-box>
1386
+                        &nbsp;
1387
+                        <label-box :isChecked="afterdialysis.internal_fistula&&afterdialysis.internal_fistula.indexOf('震颤-无') > -1 ? true : false" showValue="无"></label-box>
1388
+                    </td>
1389
+                    <td></td>
1390
+                    <!-- <td width="95">透析器堵塞:</td>
1391
+                    <td width="200">
1392
+                      <label-box :isChecked="afterdialysis.cruor ? (afterdialysis.cruor.indexOf('凝血0级') > -1 ? true : false) :false" showValue="0级"></label-box>
1393
+                      <label-box :isChecked="afterdialysis.cruor ? (afterdialysis.cruor.indexOf('凝血Ⅰ级') > -1 ? true : false) :false" showValue="Ⅰ级"></label-box>
1394
+                      <label-box :isChecked="afterdialysis.cruor ? (afterdialysis.cruor.indexOf('凝血Ⅱ级') > -1 ? true : false) :false" showValue="Ⅱ级"></label-box>
1395
+                      <label-box :isChecked="afterdialysis.cruor ? (afterdialysis.cruor.indexOf('凝血Ⅲ级') > -1 ? true : false) :false" showValue="Ⅲ级"></label-box>
1396
+                    </td> -->
1397
+                  </tr>
1398
+                </tbody>
1399
+              </table>
1400
+              <table class="table-box">
1401
+                <tbody>
1402
+                  <tr>
1403
+                    <td width="80">透析器凝血</td>
1404
+                    <td width="200">
1405
+                      <label-box :isChecked="afterdialysis.cruor ? afterdialysis.cruor.indexOf('透析器-0度') > -1 ? true : false : false" showValue="无"></label-box>&nbsp;
1406
+                      <label-box :isChecked="afterdialysis.cruor ? afterdialysis.cruor.indexOf('透析器-Ⅰ度') > -1 ? true : false : false" showValue="+"></label-box>&nbsp;
1407
+                      <label-box :isChecked="afterdialysis.cruor ? afterdialysis.cruor.indexOf('透析器-Ⅱ度') > -1 ? true : false : false" showValue="+ +"></label-box>&nbsp;
1408
+                      <label-box :isChecked="afterdialysis.cruor ? afterdialysis.cruor.indexOf('透析器-Ⅲ度') > -1 ? true : false : false" showValue="+ + +"></label-box>&nbsp;
1409
+                    </td>
1410
+                    <td width="70">静脉管道:</td>
1411
+                    <td width="200">
1412
+                      <label-box :isChecked="afterdialysis.intravenous_tube == 1 ? true : false" showValue="无"></label-box>&nbsp;
1413
+                      <label-box :isChecked="afterdialysis.intravenous_tube == 2 ? true : false" showValue="+"></label-box>&nbsp;
1414
+                      <label-box :isChecked="afterdialysis.intravenous_tube == 3 ? true : false" showValue="+ +"></label-box>&nbsp;
1415
+                      <label-box :isChecked="afterdialysis.intravenous_tube == 4 ? true : false" showValue="+ + +"></label-box>&nbsp;
1416
+                    </td>
1417
+                    <td width="70">动脉管道:</td>
1418
+                    <td width="200">
1419
+                      <label-box :isChecked="afterdialysis.arterial_tube == 1 ? true : false" showValue="无"></label-box>&nbsp;
1420
+                      <label-box :isChecked="afterdialysis.arterial_tube == 2 ? true : false" showValue="+"></label-box>&nbsp;
1421
+                      <label-box :isChecked="afterdialysis.arterial_tube == 3 ? true : false" showValue="+ +"></label-box>&nbsp;
1422
+                      <label-box :isChecked="afterdialysis.arterial_tube == 4 ? true : false" showValue="+ + +"></label-box>&nbsp;
1423
+                    </td>
1424
+                    <td></td>
1425
+                  </tr>
1426
+                </tbody>
1427
+              </table>
1428
+              <table class="table-box">
1429
+                <tbody>
1430
+                  <tr>
1431
+                    <td width='100'>
1432
+                        <label-box :isChecked="afterdialysis.puncture_point_haematoma == 1 ? true : false" showValue="穿刺处血肿"></label-box>
1433
+                    </td>
1434
+                    <td width='100'>导管特殊情况</td>
1435
+                    <td width='200'>
1436
+                        <div class="under-line">
1437
+                            &nbsp;{{ afterdialysis.catheter ? afterdialysis.catheter : '' }}
1438
+                        </div>
1439
+                    </td>
1440
+                    <td></td>
1441
+                  </tr>
1442
+                </tbody>
1443
+              </table>
1444
+
1445
+
1446
+
1447
+              <table class="table-box">
1448
+                <tbody>
1449
+                  <tr>
1450
+                    <td width="55">并发症:</td>
1451
+                    <td width="560">
1452
+                      <label-box :isChecked="afterdialysis.complication&&afterdialysis.complication.indexOf('无') > -1 ? true : false" showValue="无"></label-box>&nbsp;
1453
+                      <label-box :isChecked="afterdialysis.complication&&afterdialysis.complication.indexOf('低血压') > -1 ? true : false" showValue="低血压"></label-box>&nbsp;
1454
+                      <label-box :isChecked="afterdialysis.complication&&afterdialysis.complication.indexOf('高血压') > -1 ? true : false" showValue="高血压"></label-box>&nbsp;
1455
+                      <label-box :isChecked="afterdialysis.complication&&afterdialysis.complication.indexOf('低血糖') > -1 ? true : false" showValue="低血糖"></label-box>&nbsp;
1456
+                      <label-box :isChecked="afterdialysis.complication&&afterdialysis.complication.indexOf('头晕') > -1 ? true : false" showValue="头晕"></label-box>&nbsp;
1457
+                      <label-box :isChecked="afterdialysis.complication&&afterdialysis.complication.indexOf('头痛') > -1 ? true : false" showValue="头痛"></label-box>&nbsp;
1458
+                      <label-box :isChecked="afterdialysis.complication&&afterdialysis.complication.indexOf('呕吐') > -1 ? true : false" showValue="呕吐"></label-box>&nbsp;
1459
+                      <label-box :isChecked="afterdialysis.complication&&afterdialysis.complication.indexOf('肌肉痉挛') > -1 ? true : false" showValue="肌肉痉挛"></label-box>&nbsp;
1460
+                      <label-box :isChecked="afterdialysis.complication&&afterdialysis.complication.indexOf('出血') > -1 ? true : false" showValue="出血"></label-box>
1461
+                    </td>
1462
+                    <td width='40'>其他</td>
1463
+                    <td width='160'>
1464
+                      <div class="under-line">
1465
+                        &nbsp;{{ afterdialysis.other_complication ? afterdialysis.other_complication : '' }}
1466
+                      </div>
1467
+                    </td>
1468
+                    <td></td>
1469
+                  </tr>
1470
+                </tbody>
1471
+              </table>
1472
+
1473
+
1474
+
1475
+              <table class="table-box">
1476
+                <tbody>
1477
+                  <tr>
1478
+                    <td width="40">冲管:</td>
1479
+                    <td width="100">
1480
+                      <div class="under-line">&nbsp;
1481
+                        <span v-if="setAdminUserES(dialysisOrder==null?0:dialysisOrder.washpipe_nurse) == ''">{{getAdminUser(dialysisOrder==null?0:dialysisOrder.washpipe_nurse)}}</span>
1482
+                        <img class="es-img" style="height:30px" :src="setAdminUserES(dialysisOrder==null?0:dialysisOrder.washpipe_nurse)" alt="" srcset="" v-else>
1483
+                      </div>
1484
+                    </td>
1485
+                    <td width=30></td>
1486
+                    <td width="40">穿刺:</td>
1487
+                    <td width="100">
1488
+                      <div class="under-line">&nbsp;
1489
+                        <span v-if="setAdminUserES(dialysisOrder==null?0:dialysisOrder.puncture_nurse) == ''">{{getAdminUser(dialysisOrder==null?0:dialysisOrder.puncture_nurse)}}</span>
1490
+                        <img class="es-img" style="height:30px" :src="setAdminUserES(dialysisOrder==null?0:dialysisOrder.puncture_nurse)" alt="" srcset="" v-else>
1491
+                      </div>
1492
+                    </td>
1493
+                    <td width='30'></td>
1494
+                    <td width="80">责任护士:</td>
1495
+                    <td width="100">
1496
+                      <div class="under-line">&nbsp;
1497
+                        <!--<span v-if="afterdialysis.creater==0">&nbsp;</span>-->
1498
+                        <!--<img class="es-img" :src="setAdminUserES(afterdialysis.creater)" alt="" srcset="" v-else>-->
1499
+
1500
+                        <span v-if="setAdminUserES(dialysisOrder==null?0:dialysisOrder.start_nurse) == ''">{{getAdminUser(dialysisOrder==null?0:dialysisOrder.start_nurse)}}</span>
1501
+                        <img class="es-img" style="height:30px" :src="setAdminUserES(dialysisOrder==null?0:dialysisOrder.start_nurse)" alt="" srcset="" v-else>
1502
+                      </div>
1503
+                    </td>
1504
+                    <td width='30'></td>
1505
+                    <td width='70'>医生签名</td>
1506
+                    <td width='100'>
1507
+                        <div class="under-line">
1508
+                            &nbsp;
1509
+                            <span v-if="setAdminUserES(prescription==null?0:(prescription.prescription_doctor?prescription.prescription_doctor:'')) == ''"> {{ getAdminUser(prescription==null?0:(prescription.prescription_doctor?prescription.prescription_doctor:'')) }} </span>
1510
+                            <img style="height:30px;" :src="setAdminUserES(prescription==null?0:(prescription.prescription_doctor?prescription.prescription_doctor:''))" alt="" srcset="" v-else />
1511
+                        </div>
1512
+                    </td>
1513
+                  </tr>
1514
+                </tbody>
1515
+              </table>
1516
+            </td>
1517
+          </tr>
1518
+        </tbody>
1519
+      </table>
1343 1520
     </div>
1344 1521
   </div>
1345 1522
 </template>

+ 1 - 1
src/xt_pages/dialysis/template/DialysisPrintOrderTwentyNine.vue Просмотреть файл

@@ -246,7 +246,7 @@
246 246
                         <td width="30"></td>
247 247
                         <td width='70'>体重增加:</td>
248 248
                         <td width="50">
249
-                            <div class="under-line">&nbsp;{{ afterdialysis.weight_after ? afterdialysis.weight_after : "" }}</div>
249
+                            <div class="under-line">&nbsp;{{ (predialysis.weight_before - assessmentafter.weight_after).toFixed(1) }}</div>
250 250
                         </td>
251 251
                         <td width="10">Kg</td>
252 252
                         <td width="30"></td>

+ 7 - 0
src/xt_pages/dialysis/template/DialysisPrintOrderTwentySeven.vue Просмотреть файл

@@ -506,6 +506,13 @@
506 506
                   </tr>
507 507
                 </tbody>
508 508
               </table>
509
+              <table class="table-box">
510
+                <tbody>
511
+                  <tr>
512
+                    <td style="text-align:left;padding-left:5px;">备注:{{ predialysis.remark ? predialysis.remark : '' }}</td>
513
+                  </tr>
514
+                </tbody>
515
+              </table>
509 516
             </td>
510 517
           </tr>
511 518
         </tbody>

+ 14 - 9
src/xt_pages/hospitalStation/allListPrint.vue Просмотреть файл

@@ -168,21 +168,26 @@
168 168
 
169 169
         if (new_drug_ids.length == 0 && new_project_ids.length > 0) {
170 170
           for (let i = 0; i < new_project_ids.length; i++) {
171
-            let obj = {};
172
-            let count = 0;
171
+            let obj = {}
172
+            let count = 0
173 173
             for (let a = 0; a < details.length; a++) {
174 174
               if (new_project_ids[i].id == details[a].project.project_id && new_project_ids[i].price == details[a].project.price) {
175
-                obj['name'] = details[a].project.project.project_name;
176
-                obj['spec'] = '1';
177
-                obj['unit'] = details[a].project.project.unit;
178
-                obj['med_chrgitm_type'] = this.getType(details[a].med_chrgitm_type);
179
-                obj['price'] = parseFloat(details[a].pric);
180
-                obj['is_total'] = 2;
175
+                if( details[a].project.type == 2){
176
+                  obj['name'] = details[a].project.project.project_name
177
+                }else if(details[a].project.type == 3){
178
+                  obj['name'] = details[a].project.good_info.good_name
179
+                }
180
+                obj['unit'] = details[a].project.unit
181
+
182
+                obj['spec'] = '1'
183
+                obj['med_chrgitm_type'] = this.getType(details[a].med_chrgitm_type)
184
+                obj['price'] = parseFloat(details[a].pric)
185
+                obj['is_total'] = 2
181 186
 
182 187
                 count = count + details[a].cnt
183 188
               }
184 189
             }
185
-            obj['count'] = count;
190
+            obj['count'] = count
186 191
             list.push(obj)
187 192
           }
188 193
         }

+ 1 - 1
src/xt_pages/hospitalStation/components/ChargePrescriptionTable.vue Просмотреть файл

@@ -61,7 +61,7 @@
61 61
         <template slot-scope="scope">{{ scope.row.project_name }}</template>
62 62
       </el-table-column>
63 63
       <el-table-column align="center" prop="statistical_classification" width="100" label="组">
64
-        <template slot-scope="scope">{{getGroup(scope.row.statistical_classification)}}</template>
64
+        <template slot-scope="scope">{{scope.row.type == 2 ?getGroup(scope.row.statistical_classification):'耗材'}}</template>
65 65
       </el-table-column>
66 66
       <el-table-column align="center" prop="single_dose" width="80" label="单次用量">
67 67
         <template slot-scope="scope">{{scope.row.single_dose}}{{scope.row.unit}}</template>

+ 52 - 33
src/xt_pages/hospitalStation/components/callPrescription.vue Просмотреть файл

@@ -1,36 +1,36 @@
1 1
 <template>
2 2
   <el-dialog
3
-    :title="name"
4
-    :visible.sync="isLastOrNextVisible"
5
-    @close="hide"
6
-    width="1010px"
7
-    class="callPrescription"
8
-    :modal-append-to-body="false"
3
+          :title="name"
4
+          :visible.sync="isLastOrNextVisible"
5
+          @close="hide"
6
+          width="1010px"
7
+          class="callPrescription"
8
+          :modal-append-to-body="false"
9 9
   >
10 10
     <el-date-picker
11
-      v-model="start_time"
12
-      prefix-icon="el-icon-date"
13
-      @change="changeTime"
14
-      :editable="false"
15
-      style="width: 150px;"
16
-      type="date"
17
-      placeholder="选择日期时间"
18
-      align="right"
19
-      format="yyyy-MM-dd"
20
-      value-format="yyyy-MM-dd"
11
+            v-model="start_time"
12
+            prefix-icon="el-icon-date"
13
+            @change="changeTime"
14
+            :editable="false"
15
+            style="width: 150px;"
16
+            type="date"
17
+            placeholder="选择日期时间"
18
+            align="right"
19
+            format="yyyy-MM-dd"
20
+            value-format="yyyy-MM-dd"
21 21
     ></el-date-picker>
22 22
     <span class>-</span>
23 23
     <el-date-picker
24
-      v-model="end_time"
25
-      prefix-icon="el-icon-date"
26
-      @change="changeEndTime"
27
-      :editable="false"
28
-      style="width: 150px;"
29
-      type="date"
30
-      placeholder="选择日期时间"
31
-      align="right"
32
-      format="yyyy-MM-dd"
33
-      value-format="yyyy-MM-dd"
24
+            v-model="end_time"
25
+            prefix-icon="el-icon-date"
26
+            @change="changeEndTime"
27
+            :editable="false"
28
+            style="width: 150px;"
29
+            type="date"
30
+            placeholder="选择日期时间"
31
+            align="right"
32
+            format="yyyy-MM-dd"
33
+            value-format="yyyy-MM-dd"
34 34
     ></el-date-picker>
35 35
 
36 36
 
@@ -93,11 +93,11 @@
93 93
             <el-table-column align="center" type="index" width="60" label="序号"></el-table-column>
94 94
             <el-table-column align="center" prop="project_name" width="160" label="名称">
95 95
               <template slot-scope="scope">
96
-                <span>{{ scope.row.project.project_name }}</span>
96
+                <span>{{ scope.row.type == 2?scope.row.project.project_name:scope.row.good_info.good_name}}</span>
97 97
               </template>
98 98
             </el-table-column>
99 99
             <el-table-column align="center" prop="statistical_classification" width="100" label="组">
100
-              <template slot-scope="scope">{{getGroup(scope.row.statistical_classification)}}</template>
100
+              <template slot-scope="scope">{{scope.row.type == 2 ?getGroup(scope.row.statistical_classification):"耗材"}}</template>
101 101
             </el-table-column>
102 102
             <el-table-column align="center" prop="single_dose" width="90" label="单次用量">
103 103
               <template slot-scope="scope">
@@ -190,7 +190,6 @@
190 190
           start_time: this.start_time,
191 191
           end_time:this.end_time,
192 192
           p_type:1,
193
-
194 193
         };
195 194
         this.GetCallHisPrescription(params)
196 195
       },changeEndTime(){
@@ -261,13 +260,15 @@
261 260
                 single_dose_unit:prescription.doctor_advice[b].single_dose_unit,
262 261
                 prescribing_number_unit:prescription.doctor_advice[b].prescribing_number_unit,
263 262
                 medical_insurance_number:prescription.doctor_advice[b].med_list_codg,
264
-                id:prescription.doctor_advice[b].drug_id
263
+                id:prescription.doctor_advice[b].drug_id,
264
+                drug:prescription.doctor_advice[b].drug,
265 265
               };
266 266
               tempAdvice.push(obj)
267 267
 
268 268
             }
269 269
 
270 270
 
271
+
271 272
             for (let b = 0; b < prescription.project.length; b++) {
272 273
               let obj = {
273 274
                 id: 0,
@@ -281,8 +282,26 @@
281 282
                 total:prescription.project[b].count,
282 283
                 price:prescription.project[b].price,
283 284
                 remark:prescription.project[b].remark,
284
-                medical_code:prescription.project[b].project.medical_code,
285
+                unit: prescription.project[b].unit,
286
+                type: prescription.project[b].type,
287
+
288
+
289
+                // medical_code:prescription.project[b].project.medical_code,
285 290
               };
291
+              console.log(prescription.project[b].type)
292
+              if(prescription.project[b].type == 2){
293
+
294
+                obj['statistical_classification'] =  prescription.project[b].project.statistical_classification
295
+                obj['medical_code'] =  prescription.project[b].project.medical_code
296
+                obj['project_name'] =  prescription.project[b].project.project_name
297
+
298
+              }else if(prescription.project[b].type == 3){
299
+
300
+                obj['statistical_classification'] = ""
301
+                obj['medical_code'] =  prescription.project[b].good_info.medical_insurance_number
302
+                obj['project_name'] =  prescription.project[b].good_info.good_name
303
+              }
304
+
286 305
               tempProject.push(obj)
287 306
             }
288 307
             let obj = {
@@ -347,7 +366,7 @@
347 366
 </script>
348 367
 
349 368
 <style lang="scss">
350
-.callPrescription{
369
+  .callPrescription{
351 370
   .el-dialog__body{
352 371
     padding:0px 20px 30px;
353 372
   }
@@ -355,5 +374,5 @@
355 374
     margin-top: 10px;
356 375
     font-size: 14px;
357 376
   }
358
-}
377
+  }
359 378
 </style>

+ 193 - 52
src/xt_pages/hospitalStation/components/deskPrescription.vue Просмотреть файл

@@ -264,12 +264,7 @@
264 264
                       <template slot-scope="scope">{{ scope.row.drug_spec }}</template>
265 265
                     </el-table-column>
266 266
                     <el-table-column label="库存" width="60">
267
-                      <template slot-scope="scope">{{
268
-                        stockInCount(scope.row) -
269
-                        salesReturnCount(scope.row) -
270
-                        stockOutCount(scope.row) +
271
-                        cancelStockCount(scope.row)
272
-                        }}
267
+                      <template slot-scope="scope">{{scope.row.total }}
273 268
                       </template>
274 269
                     </el-table-column>
275 270
                     <el-table-column label="单价" width="40">
@@ -279,6 +274,10 @@
279 274
                 </div>
280 275
 
281 276
               </el-tab-pane>
277
+              <!--// stockInCount(scope.row) - -->
278
+              <!--// salesReturnCount(scope.row) - -->
279
+              <!--// stockOutCount(scope.row) +-->
280
+              <!--// cancelStockCount(scope.row)-->
282 281
               <!--<el-tab-pane label="医嘱模板" name="2">-->
283 282
               <!--<div style="margin-bottom:5px;">-->
284 283
               <!--&lt;!&ndash;<el-input style="width:50%;" v-model="input" placeholder=""></el-input>&ndash;&gt;-->
@@ -473,12 +472,12 @@
473 472
         end_time: moment(new Date()).add('year', 0).format('YYYY-MM-DD'),
474 473
         register: [
475 474
           { value: 11, label: '普通门诊' },
476
-          { value: 12, label: '门诊挂号' },
477
-          { value: 13, label: '急诊' },
475
+          // { value: 12, label: '门诊挂号' },
476
+          // { value: 13, label: '急诊' },
478 477
           { value: 14, label: '门诊特殊病' },
479
-          { value: 15, label: '门诊统筹' },
480
-          { value: 16, label: '门诊慢性病' },
481
-          { value: 21, label: '普通住院' }
478
+          // { value: 15, label: '门诊统筹' },
479
+          // { value: 16, label: '门诊慢性病' },
480
+          // { value: 21, label: '普通住院' }
482 481
 
483 482
         ],
484 483
         isLastOrNextVisible: false,
@@ -577,7 +576,6 @@
577 576
       }
578 577
     },
579 578
     methods: {
580
-
581 579
       changeClass(id) {
582 580
         this.tabProject = [];
583 581
         if (id == 0) {
@@ -591,6 +589,9 @@
591 589
         }
592 590
       },
593 591
       setMonthPrescription(month_prescriptions) {
592
+
593
+
594
+
594 595
         this.month_prescriptions = [];
595 596
 
596 597
         let drug_month_prescriptions = {
@@ -663,12 +664,6 @@
663 664
           return cur
664 665
         }, []); // 设置cur默认类型为数组,并且初始值为空的数组
665 666
 
666
-        console.log(drug_ids);
667
-        console.log(project_ids);
668
-        console.log(additions_ids);
669
-
670
-        console.log(additions_ids);
671
-
672 667
         let drugs = [];
673 668
         let projects = [];
674 669
         let additions = [];
@@ -689,7 +684,10 @@
689 684
               obj['id'] = drug_month_prescriptions.advices[a].drug_id;
690 685
               // obj['retail_price'] = obj['retail_price'] +  drug_month_prescriptions.advices[a].drug.retail_price
691 686
               obj['retail_price'] = parseFloat(drug_month_prescriptions.advices[a].price);
692
-              count = count + drug_month_prescriptions.advices[a].prescribing_number
687
+              obj['drug'] = drug_month_prescriptions.advices[a].drug;
688
+
689
+
690
+                      count = count + drug_month_prescriptions.advices[a].prescribing_number
693 691
 
694 692
             }
695 693
           }
@@ -702,19 +700,35 @@
702 700
           let count = 0;
703 701
           for (let a = 0; a < project_month_prescriptions.project.length; a++) {
704 702
             if (project_ids[i].price == project_month_prescriptions.project[a].price) {
705
-              obj['project_name'] = project_month_prescriptions.project[a].project.project_name;
706
-              obj['statistical_classification'] = project_month_prescriptions.project[a].project.statistical_classification;
703
+              // obj['project_name'] = project_month_prescriptions.project[a].project.project_name;
704
+              // obj['statistical_classification'] = project_month_prescriptions.project[a].project.statistical_classification;
707 705
               obj['single_dose'] = project_month_prescriptions.project[a].single_dose;
708 706
               obj['delivery_way'] = project_month_prescriptions.project[a].delivery_way;
709 707
               obj['execution_frequency'] = project_month_prescriptions.project[a].execution_frequency;
710 708
               obj['number_days'] = project_month_prescriptions.project[a].day;
711
-              obj['medical_code'] = project_month_prescriptions.project[a].project.medical_code;
709
+              // obj['medical_code'] = project_month_prescriptions.project[a].project.medical_code;
712 710
               obj['unit'] = project_month_prescriptions.project[a].unit;
713 711
               obj['project_id'] = project_month_prescriptions.project[a].project_id;
714 712
               count = count + project_month_prescriptions.project[a].count;
715 713
               // price = price + project_month_prescriptions.project[a].price
716 714
               obj['price'] = parseFloat(project_month_prescriptions.project[a].price)
717 715
 
716
+
717
+              if (project_month_prescriptions.project[a].type == 2) {
718
+                console.log("~~~~~~~????????")
719
+
720
+                obj['statistical_classification'] = project_month_prescriptions.project[a].project.statistical_classification
721
+                obj['medical_code'] = project_month_prescriptions.project[a].project.medical_code
722
+                obj['project_name'] = project_month_prescriptions.project[a].project.project_name
723
+
724
+              } else if (project_month_prescriptions.project[a].type == 3) {
725
+                console.log("~~~~~~~????????2222222")
726
+
727
+                obj['statistical_classification'] = ''
728
+                obj['medical_code'] = project_month_prescriptions.project[a].good_info.medical_insurance_number
729
+                obj['project_name'] = project_month_prescriptions.project[a].good_info.good_name
730
+              }
731
+
718 732
             }
719 733
           }
720 734
           obj['total'] = count;
@@ -767,6 +781,12 @@
767 781
 
768 782
         this.curMonthPrescriptions = this.month_prescriptions[0]
769 783
 
784
+        console.log("~~~~~~~~~")
785
+
786
+        console.log(this.curMonthPrescriptions)
787
+        console.log("~~~~~~~~~")
788
+
789
+
770 790
       },
771 791
 
772 792
       // setMonthPrescription(month_prescriptions) {
@@ -999,7 +1019,10 @@
999 1019
                       single_dose_unit: prescription.advices[b].single_dose_unit,
1000 1020
                       prescribing_number_unit: prescription.advices[b].prescribing_number_unit,
1001 1021
                       medical_insurance_number: prescription.advices[b].med_list_codg,
1002
-                      id: prescription.advices[b].drug_id
1022
+                      id: prescription.advices[b].drug_id,
1023
+                      drug:prescription.advices[b].drug,
1024
+
1025
+
1003 1026
                     };
1004 1027
                     tempAdvice.push(obj)
1005 1028
                   }
@@ -1019,8 +1042,18 @@
1019 1042
                       price: prescription.project[b].price,
1020 1043
                       remark: prescription.project[b].remark,
1021 1044
                       medical_code: prescription.project[b].project.medical_code,
1022
-                      unit: prescription.project[b].project.unit
1045
+                      unit: prescription.project[b].unit
1023 1046
                     };
1047
+                    if (prescription.project[b].type == 2) {
1048
+                      obj['statistical_classification'] = prescription.project[b].project.statistical_classification
1049
+                      obj['medical_code'] = prescription.project[b].project.medical_code
1050
+                      obj['project_name'] = prescription.project[b].project.project_name
1051
+
1052
+                    } else if (prescription.project[b].type == 3) {
1053
+                      obj['statistical_classification'] = ''
1054
+                      obj['medical_code'] = prescription.project[b].good_info.medical_insurance_number
1055
+                      obj['project_name'] = prescription.project[b].good_info.good_name
1056
+                    }
1024 1057
                     tempProject.push(obj)
1025 1058
                   }
1026 1059
 
@@ -1104,7 +1137,9 @@
1104 1137
                       single_dose_unit: prescription.advices[b].single_dose_unit,
1105 1138
                       prescribing_number_unit: prescription.advices[b].prescribing_number_unit,
1106 1139
                       medical_insurance_number: prescription.advices[b].med_list_codg,
1107
-                      id: prescription.advices[b].drug_id
1140
+                      id: prescription.advices[b].drug_id,
1141
+                      drug:prescription.advices[b].drug,
1142
+
1108 1143
                     };
1109 1144
                     tempAdvice.push(obj)
1110 1145
                   }
@@ -1124,8 +1159,18 @@
1124 1159
                       price: prescription.project[b].price,
1125 1160
                       remark: prescription.project[b].remark,
1126 1161
                       medical_code: prescription.project[b].project.medical_code,
1127
-                      unit: prescription.project[b].project.unit
1162
+                      unit: prescription.project[b].unit
1128 1163
                     };
1164
+                    if (prescription.project[b].type == 2) {
1165
+                      obj['statistical_classification'] = prescription.project[b].project.statistical_classification
1166
+                      obj['medical_code'] = prescription.project[b].project.medical_code
1167
+                      obj['project_name'] = prescription.project[b].project.project_name
1168
+
1169
+                    } else if (prescription.project[b].type == 3) {
1170
+                      obj['statistical_classification'] = ''
1171
+                      obj['medical_code'] = prescription.project[b].good_info.medical_insurance_number
1172
+                      obj['project_name'] = prescription.project[b].good_info.good_name
1173
+                    }
1129 1174
                     tempProject.push(obj)
1130 1175
                   }
1131 1176
 
@@ -2257,8 +2302,6 @@
2257 2302
       },
2258 2303
 
2259 2304
       comfirm() {
2260
-        console.log("222222222222",this.curPrescriptions);
2261
-
2262 2305
 
2263 2306
         if (this.curPrescriptions.order_status == 2) {
2264 2307
           this.$message.error('该处方已经结算,无法继续添加药品或者项目');
@@ -2377,7 +2420,8 @@
2377 2420
                   prescribing_number: temp[b].prescribing_number,
2378 2421
                   single_dose_unit: temp[b].min_unit,
2379 2422
                   prescribing_number_unit: temp[b].max_unit,
2380
-                  medical_insurance_number: temp[b].medical_insurance_number
2423
+                  medical_insurance_number: temp[b].medical_insurance_number,
2424
+                  drug: temp[b],
2381 2425
 
2382 2426
                 };
2383 2427
 
@@ -2389,20 +2433,19 @@
2389 2433
               this.curStatus = 1
2390 2434
             }
2391 2435
 
2392
-           if(this.activeName == 2){
2393
-
2394
-              for(let i = 0; i<temp2.length;i++){
2395
-               for(let j=0;j<this.hisList.length;j++){
2396
-                   if(temp2[i].id == this.hisList[j].project_id){
2397
-                      temp2[i].total =  this.hisList[j].number
2398
-                   }
2399
-               }
2400
-              }
2401
-            }
2436
+           // if(this.activeName == 2){
2437
+           //
2438
+           //  //   for(let i = 0; i<temp2.length;i++){
2439
+           //  //    for(let j=0;j<this.hisList.length;j++){
2440
+           //  //        if(temp2[i].id == this.hisList[j].project_id){
2441
+           //  //           temp2[i].total =  this.hisList[j].number
2442
+           //  //        }
2443
+           //  //    }
2444
+           //  //   }
2445
+           //  // }
2402 2446
 
2403 2447
 
2404 2448
             if (temp2.length > 0) {
2405
-              console.log("temp2222222222",temp2);
2406 2449
               for (let b = 0; b < temp2.length; b++) {
2407 2450
                 let obj = {
2408 2451
                   id: 0,
@@ -2417,19 +2460,22 @@
2417 2460
                   price: temp2[b].price,
2418 2461
                   remark: '',
2419 2462
                   medical_code: temp2[b].medical_code,
2420
-                  unit: temp2[b].unit
2421
-                };
2463
+                  unit: temp2[b].unit,
2464
+                  type: temp2[b].type
2465
+                }
2422 2466
                 if (obj.total == 0) {
2423 2467
                   obj.total = 1
2424 2468
                 }
2469
+                if (obj.type == 3) {
2470
+                  obj.single_dose = 1
2471
+                }
2472
+                console.log(obj)
2425 2473
                 this.prescriptions[i].project.push(obj)
2426 2474
               }
2427 2475
               this.curStatus = 2
2428 2476
             }
2429 2477
 
2430 2478
             this.curPrescriptions = this.prescriptions[i];
2431
-            console.log("~~~~~~~~~");
2432
-            console.log("~~~~~~~~~");
2433 2479
 
2434 2480
             this.$refs.multipleTable.clearSelection();
2435 2481
             this.$refs.tables.clearSelection()
@@ -2440,7 +2486,8 @@
2440 2486
         this.preDrugs = [];
2441 2487
         this.teamList = []
2442 2488
 
2443
-      }, changeAllGoodInfoTableDataTwo(row) {
2489
+      },
2490
+      changeAllGoodInfoTableDataTwo(row) {
2444 2491
         this.teamList = row
2445 2492
       },
2446 2493
       selectChange(row) {
@@ -2449,12 +2496,49 @@
2449 2496
       getlist() {
2450 2497
         getHisProject().then(response => {
2451 2498
           if (response.data.state == 1) {
2452
-            var project = response.data.data.project;
2453
-            this.tabProject = project;
2454
-            this.allProject = project
2499
+            var project = response.data.data.project
2500
+            for (let i = 0; i < project.length; i++) {
2501
+              let obj = {
2502
+                id: project[i].id,
2503
+                project_name: project[i].project_name,
2504
+                statistical_classification: project[i].statistical_classification,
2505
+                single_dose: project[i].single_dose,
2506
+                delivery_way: project[i].delivery_way,
2507
+                execution_frequency: project[i].execution_frequency,
2508
+                number_days: project[i].number_days,
2509
+                price: project[i].price,
2510
+                medical_code: project[i].medical_code,
2511
+                unit: project[i].unit,
2512
+                type: 2
2513
+              }
2514
+
2515
+              this.tabProject.push(obj)
2516
+            }
2517
+
2518
+            var good_info = response.data.data.good_info
2519
+
2520
+            for (let i = 0; i < good_info.length; i++) {
2521
+              let obj = {
2522
+                id: good_info[i].id,
2523
+                project_name: good_info[i].good_name,
2524
+                statistical_classification: 0,
2525
+                single_dose: 1,
2526
+                delivery_way: '',
2527
+                execution_frequency: '',
2528
+                number_days: 1,
2529
+                price: good_info[i].retail_price,
2530
+                medical_code: good_info[i].medical_insurance_number,
2531
+                unit: this.getGoodUnit(good_info[i].good_unit),
2532
+                type: 3
2533
+              }
2534
+              this.tabProject.push(obj)
2535
+            }
2536
+
2537
+            this.allProject = this.tabProject
2455 2538
 
2456 2539
           }
2457 2540
         })
2541
+
2458 2542
       }, deepClone(source) {
2459 2543
         if (!source && typeof source !== 'object') {
2460 2544
           throw new Error('error arguments', 'shallowClone')
@@ -2477,12 +2561,19 @@
2477 2561
             this.tabPrjectTeam = team
2478 2562
           }
2479 2563
         })
2564
+      }, getGoodUnit(id) {
2565
+        var goodUnit = this.$store.getters.good_unit
2566
+        for (let i = 0; i < goodUnit.length; i++) {
2567
+          if (goodUnit[i].id == id) {
2568
+            return goodUnit[i].name
2569
+          }
2570
+        }
2480 2571
       },
2481 2572
       selectTeam(row) {
2482 2573
         console.log("row",row);
2483 2574
         var arr = [];
2484 2575
         for (let i = 0; i < row.length; i++) {
2485
-          arr.push(row[i].project_id)
2576
+          arr.push(row[i].item_id)
2486 2577
         }
2487 2578
         var ids = arr.join(',');
2488 2579
         var strArr = ids.split(',');
@@ -2507,11 +2598,61 @@
2507 2598
         };
2508 2599
         getPojectListById(params).then(response => {
2509 2600
           if (response.data.state == 1) {
2510
-            var project = response.data.data.project;
2511
-            this.teamList = [];
2512
-            this.teamList = project
2601
+            this.teamList = []
2602
+            var project = response.data.data.project
2603
+            for (let i = 0; i < project.length; i++) {
2604
+              if (project[i].type == 2) {
2605
+
2606
+                let obj = {
2607
+                  id: project[i].project_id,
2608
+                  project_name: project[i].project.project_name,
2609
+                  statistical_classification: project[i].project.statistical_classification,
2610
+                  single_dose: project[i].project.single_dose,
2611
+                  delivery_way: project[i].project.delivery_way,
2612
+                  execution_frequency: project[i].project.execution_frequency,
2613
+                  number_days: project[i].project.number_days,
2614
+                  total: project[i].number,
2615
+                  price: project[i].project.price,
2616
+                  remark: '',
2617
+                  medical_code: project[i].project.medical_code,
2618
+                  unit: project[i].project.unit,
2619
+                  type: project[i].type
2620
+                }
2621
+                if (obj.total == 0) {
2622
+                  obj.total = 1
2623
+                }
2624
+
2625
+                this.teamList.push(obj)
2626
+              } else if (project[i].type == 3) {
2627
+                let obj = {
2628
+                  id: project[i].project_id,
2629
+                  project_name: project[i].good_info.good_name,
2630
+                  statistical_classification: "",
2631
+                  single_dose: "",
2632
+                  delivery_way: "",
2633
+                  execution_frequency:"",
2634
+                  number_days:"",
2635
+                  total: project[i].number,
2636
+                  price: project[i].good_info.retail_price,
2637
+                  remark: '',
2638
+                  medical_code: project[i].good_info.medical_insurance_number,
2639
+                  unit: project[i].good_info.unit,
2640
+                  type: project[i].type
2641
+                }
2642
+                if (obj.total == 0) {
2643
+                  obj.total = 1
2644
+                }
2645
+                this.teamList.push(obj)
2646
+
2647
+                console.log( this.teamList)
2648
+
2649
+              }
2650
+            }
2651
+
2652
+
2513 2653
           }
2514 2654
         })
2655
+
2515 2656
       }, changeDoctor(val) {
2516 2657
         for (let i = 0; i < this.doctors.length; i++) {
2517 2658
           if (this.doctors[i].admin_user_id == this.doctorValue) {

+ 1 - 1
src/xt_pages/hospitalStation/components/deskRecord.vue Просмотреть файл

@@ -77,7 +77,7 @@
77 77
     </el-form>
78 78
     <div class="mainTitle">病历信息:</div>
79 79
     <el-form class="recordForm" :model="case_history" ref="form" label-width="80px">
80
-     <el-form-item label="疾病类型: " prop="name" style="width:49%;">
80
+     <el-form-item filterable label="疾病类型: " prop="name" style="width:49%;">
81 81
         <el-select v-model="case_history.sick" style="width:100%;" placeholder="请选择">
82 82
           <el-option
83 83
             v-for="(item,index) in sick"

+ 20 - 1
src/xt_pages/hospitalStation/components/inquiriesDetail.vue Просмотреть файл

@@ -295,8 +295,25 @@
295 295
                   medical_code: prescription.project[b].project.medical_code,
296 296
                   unit:prescription.project[b].project.unit,
297 297
                 };
298
+                if(prescription.project[b].type == 2){
299
+                  obj['statistical_classification'] =  prescription.project[b].project.statistical_classification
300
+                  obj['medical_code'] =  prescription.project[b].project.medical_code
301
+                  obj['project_name'] =  prescription.project[b].project.project_name
302
+                  obj['type'] =  2
303
+
304
+
305
+
306
+                }else if(prescription.project[b].type == 3){
307
+                  obj['statistical_classification'] = ""
308
+                  obj['medical_code'] =  prescription.project[b].good_info.medical_insurance_number
309
+                  obj['project_name'] =  prescription.project[b].good_info.good_name
310
+                  obj['type'] =  3
311
+
312
+                }
298 313
                 tempProject.push(obj)
299 314
               }
315
+
316
+              console.log(tempProject)
300 317
               let index = i + 1;
301 318
               let obj = {
302 319
                 id: prescription.id,
@@ -306,9 +323,11 @@
306 323
                 type: response.data.data.prescription[i].type
307 324
               };
308 325
               this.prescriptions.push(obj);
309
-              console.log(this.prescriptions);
310 326
 
311 327
               this.curPrescriptions = this.prescriptions[0]
328
+
329
+
330
+
312 331
             }
313 332
           }
314 333
         });

+ 1 - 1
src/xt_pages/hospitalStation/components/newPrescriptionTable.vue Просмотреть файл

@@ -63,7 +63,7 @@
63 63
       </el-table-column>
64 64
       <el-table-column align="center" prop="statistical_classification" width="100" label="组">
65 65
         <template slot-scope="scope">
66
-          <div>{{getGroup(scope.row.statistical_classification)}}</div>
66
+          <div>{{scope.row.type == 2?getGroup(scope.row.statistical_classification):"耗材"}}</div>
67 67
         </template>
68 68
       </el-table-column>
69 69
       <el-table-column align="center" prop="single_dose" width="100" label="单次用量">

+ 43 - 24
src/xt_pages/hospitalStation/components/nextOrLastPrescription.vue Просмотреть файл

@@ -1,23 +1,23 @@
1 1
 <template>
2 2
   <el-dialog
3
-    :title="name"
4
-    :visible.sync="isLastOrNextVisible"
5
-    @close="hide"
6
-    width="1010px"
7
-    :modal-append-to-body="false"
8
-    class="isLastOrNext"
3
+          :title="name"
4
+          :visible.sync="isLastOrNextVisible"
5
+          @close="hide"
6
+          width="1010px"
7
+          :modal-append-to-body="false"
8
+          class="isLastOrNext"
9 9
   >
10 10
     <div class="txsj" style="text-align:center;">
11 11
       <el-button
12
-        round
12
+              round
13 13
 
14
-        @click="openLast(3)"
14
+              @click="openLast(3)"
15 15
       >上一方
16 16
       </el-button>
17 17
 
18 18
       <el-button
19
-        round
20
-        @click="openNext(4)"
19
+              round
20
+              @click="openNext(4)"
21 21
       >下一方
22 22
       </el-button>
23 23
     </div>
@@ -39,7 +39,7 @@
39 39
 
40 40
             <el-table-column align="center" prop="single_dose" width="90" label="单次用量">
41 41
               <template slot-scope="scope">
42
-                  <div>{{scope.row.single_dose}}{{scope.row.single_dose_unit}}</div>
42
+                <div>{{scope.row.single_dose}}{{scope.row.single_dose_unit}}</div>
43 43
               </template>
44 44
             </el-table-column>
45 45
             <el-table-column align="center" prop="delivery_way" width="100" label="用法">
@@ -81,11 +81,11 @@
81 81
             <el-table-column align="center" type="index" width="60" label="序号"></el-table-column>
82 82
             <el-table-column align="center" prop="project_name" width="160" label="名称">
83 83
               <template slot-scope="scope">
84
-                <span>{{ scope.row.project.project_name }}</span>
84
+                <span>{{ scope.row.type == 2 ?scope.row.project.project_name:scope.row.good_info.good_name}}</span>
85 85
               </template>
86 86
             </el-table-column>
87 87
             <el-table-column align="center" prop="statistical_classification" width="100" label="组">
88
-              <template slot-scope="scope">{{getGroup(scope.row.statistical_classification)}}</template>
88
+              <template slot-scope="scope">{{ scope.row.type == 2 ?getGroup(scope.row.statistical_classification):"耗材"}}</template>
89 89
             </el-table-column>
90 90
             <el-table-column align="center" prop="single_dose" width="90" label="单次用量">
91 91
               <template slot-scope="scope">
@@ -117,7 +117,7 @@
117 117
             </el-table-column>
118 118
             <el-table-column align="center" prop="total" width="70" label="总量">
119 119
               <template slot-scope="scope">
120
-                  <div>{{ scope.row.total }}{{scope.row.unit}}</div>
120
+                <div>{{ scope.row.total }}{{scope.row.unit}}</div>
121 121
               </template>
122 122
             </el-table-column>
123 123
             <el-table-column align="center" prop="name" width="60" label="单价">
@@ -165,7 +165,7 @@
165 165
         name:"",
166 166
         request_record_date:'',
167 167
         patient_id:0,
168
-         allPrescription: [
168
+        allPrescription: [
169 169
           {
170 170
             check_group: [],
171 171
             prescriptions: [
@@ -235,11 +235,12 @@
235 235
       }
236 236
     }, methods: {
237 237
       openLast(val) {
238
-       if (val == 3) {
238
+        if (val == 3) {
239 239
           let params = {
240 240
             patient_id: this.patient_id,
241 241
             record_time: this.request_record_date,
242
-            type: 1
242
+            type: 1,
243
+            p_type:1,
243 244
           };
244 245
 
245 246
           this.GetNextOrLastHisPrescription(params)
@@ -251,7 +252,9 @@
251 252
           let params = {
252 253
             patient_id: this.patient_id,
253 254
             record_time: this.request_record_date,
254
-            type: 2
255
+            type: 2,
256
+            p_type:1,
257
+
255 258
           };
256 259
           this.GetNextOrLastHisPrescription(params)
257 260
         }
@@ -314,7 +317,8 @@
314 317
                 single_dose_unit:prescription.doctor_advice[b].single_dose_unit,
315 318
                 prescribing_number_unit:prescription.doctor_advice[b].prescribing_number_unit,
316 319
                 medical_insurance_number:prescription.doctor_advice[b].med_list_codg,
317
-                id:prescription.doctor_advice[b].drug_id
320
+                id:prescription.doctor_advice[b].drug_id,
321
+                drug:prescription.doctor_advice[b].drug,
318 322
               };
319 323
               tempAdvice.push(obj)
320 324
 
@@ -325,8 +329,8 @@
325 329
               let obj = {
326 330
                 id: 0,
327 331
                 project_id: prescription.project[b].project_id,
328
-                project_name: prescription.project[b].project.project_name,
329
-                statistical_classification: prescription.project[b].project.statistical_classification,
332
+                // project_name: prescription.project[b].project.project_name,
333
+                // statistical_classification: prescription.project[b].project.statistical_classification,
330 334
                 single_dose: prescription.project[b].single_dose,
331 335
                 delivery_way: prescription.project[b].delivery_way,
332 336
                 execution_frequency: prescription.project[b].execution_frequency,
@@ -334,8 +338,23 @@
334 338
                 total:prescription.project[b].count.toString(),
335 339
                 price:prescription.project[b].price,
336 340
                 remark:prescription.project[b].remark,
337
-                medical_code:prescription.project[b].project.medical_code,
341
+                unit: prescription.project[b].unit,
342
+                type: prescription.project[b].type,
343
+
344
+                // medical_code:prescription.project[b].project.medical_code,
338 345
               };
346
+
347
+              if(prescription.project[b].type == 2){
348
+                obj['statistical_classification'] =  prescription.project[b].project.statistical_classification
349
+                obj['medical_code'] =  prescription.project[b].project.medical_code
350
+                obj['project_name'] =  prescription.project[b].project.project_name
351
+
352
+              }else if(prescription.project[b].type == 3){
353
+                obj['statistical_classification'] = ""
354
+                obj['medical_code'] =  prescription.project[b].good_info.medical_insurance_number
355
+                obj['project_name'] =  prescription.project[b].good_info.good_name
356
+              }
357
+
339 358
               tempProject.push(obj)
340 359
             }
341 360
             let obj = {
@@ -405,7 +424,7 @@
405 424
 </script>
406 425
 
407 426
 <style lang="scss">
408
-.isLastOrNext{
427
+  .isLastOrNext{
409 428
   .el-dialog__body{
410 429
     padding:0px 20px 30px;
411 430
   }
@@ -413,5 +432,5 @@
413 432
     margin-top: 10px;
414 433
     font-size: 14px;
415 434
   }
416
-}
435
+  }
417 436
 </style>

+ 13 - 12
src/xt_pages/hospitalStation/components/prescriptionTable.vue Просмотреть файл

@@ -75,15 +75,14 @@
75 75
         </template>
76 76
       </el-table-column>
77 77
     </el-table>
78
-
79 78
     <el-table v-if="activeType == 2" :data="prescription.project" border style="width: 99%;" :row-style="{ color: '#303133' }"
80 79
               :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}" highlight-current-row>
81
-       <el-table-column align="center" type="index" width="40" label="序号"></el-table-column>
80
+      <el-table-column align="center" type="index" width="40" label="序号"></el-table-column>
82 81
       <el-table-column align="center" prop="project_name" label="名称">
83 82
         <template slot-scope="scope"><span :title="scope.row.project_name">{{ scope.row.project_name }}</span></template>
84 83
       </el-table-column>
85 84
       <el-table-column align="center" prop="statistical_classification" width="100" label="组">
86
-        <template slot-scope="scope">{{getGroup(scope.row.statistical_classification)}}</template>
85
+        <template slot-scope="scope">{{scope.row.type == 2?getGroup(scope.row.statistical_classification):"耗材"}}</template>
87 86
       </el-table-column>
88 87
       <el-table-column align="center" prop="single_dose" width="80" label="单次用量">
89 88
         <template slot-scope="scope">
@@ -95,11 +94,11 @@
95 94
       <el-table-column align="center" prop="delivery_way" width="80" label="用法">
96 95
         <template slot-scope="scope">
97 96
           <el-autocomplete
98
-            style="width:100%;"
99
-            class="inline-input"
100
-            v-model="scope.row.delivery_way"
101
-            :fetch-suggestions="querySearch2"
102
-            placeholder="请输入内容"
97
+                  style="width:100%;"
98
+                  class="inline-input"
99
+                  v-model="scope.row.delivery_way"
100
+                  :fetch-suggestions="querySearch2"
101
+                  placeholder="请输入内容"
103 102
           ></el-autocomplete>
104 103
         </template>
105 104
       </el-table-column>
@@ -108,10 +107,12 @@
108 107
           <el-input v-model="scope.row.execution_frequency" placeholder=""></el-input>
109 108
         </template>
110 109
       </el-table-column>
111
-      <el-table-column align="center" prop="number_days" width="50" label="天数">
110
+      <el-table-column align="center" prop="number_days" width="70" label="天数">
112 111
         <template slot-scope="scope">
113
-          <el-input v-model="scope.row.number_days" @input="getProjectDay(scope)" placeholder=""></el-input>
114
-          <div>{{'天'}}</div>
112
+          <div style="display:flex;align-items:center;">
113
+            <el-input v-model="scope.row.number_days" @input="getProjectDay(scope)" placeholder=""></el-input>
114
+            <div>{{'天'}}</div>
115
+          </div>
115 116
         </template>
116 117
       </el-table-column>
117 118
       <el-table-column align="center" prop="total" width="70" label="总量">
@@ -132,7 +133,7 @@
132 133
       </el-table-column>
133 134
       <el-table-column align="center" prop="name" width="50" label="备注">
134 135
         <template slot-scope="scope">
135
-           <el-input v-model="scope.row.remark" :title="scope.row.remark"></el-input>
136
+          <el-input v-model="scope.row.remark" :title="scope.row.remark"></el-input>
136 137
         </template>
137 138
       </el-table-column>
138 139
       <el-table-column align="center" width="40" prop="name" label="操作">

+ 11 - 8
src/xt_pages/hospitalStation/components/registerDialog.vue Просмотреть файл

@@ -155,7 +155,7 @@
155 155
         </div>
156 156
       </el-form-item>
157 157
 
158
-      <el-form-item label="挂号类型:" prop="register" :validate-event="is_Name">
158
+      <el-form-item label="挂号类型:" :validate-event="is_Name">
159 159
         <el-select v-model="form.register" placeholder="请选择" style="width:100%;">
160 160
           <el-option
161 161
             v-for="item in register"
@@ -197,12 +197,12 @@
197 197
       return {
198 198
         registers: [
199 199
           {value: 11, label: "普通门诊"},
200
-          {value: 12, label: '门诊挂号'},
201
-          {value: 13, label: "急诊"},
200
+          // {value: 12, label: '门诊挂号'},
201
+          // {value: 13, label: "急诊"},
202 202
           {value: 14, label: "门诊特殊病"},
203
-          {value: 15, label: "门诊统筹"},
204
-          {value: 16, label: "门诊慢性病"},
205
-          {value: 21, label: "普通住院"},
203
+          // {value: 15, label: "门诊统筹"},
204
+          // {value: 16, label: "门诊慢性病"},
205
+          // {value: 21, label: "普通住院"},
206 206
         ],
207 207
         medical_care:[
208 208
           {value: 11, label: "普通门诊"},
@@ -260,7 +260,10 @@
260 260
           {value: 4, label: '农保'},
261 261
           {value: 5, label: '会员'},
262 262
           {value: 6, label: '职工'},
263
-          {value: 7, label: '合同'}
263
+          {value: 7, label: '合同'},
264
+          {value: 8, label: '医保自费'},
265
+
266
+
264 267
         ],
265 268
         sex: [{
266 269
           value: 1,
@@ -330,7 +333,7 @@
330 333
           name: [{required: true, message: "患者姓名不能为空", trigger: 'blur'}],
331 334
           gender: [{required: true, message: "患者性别不能为空", trigger: 'blur'}],
332 335
           id_card: [{required: true, message: '证件号码不能为空', trigger: 'blur'}],
333
-          register: [{required: true, message: '请选择挂号类型', trigger: 'blur'}],
336
+          // register: [{required: true, message: '请选择挂号类型', trigger: 'blur'}],
334 337
           doctor: [{required: true, message: '请选择医生', trigger: 'blur'}],
335 338
           department: [{required: true, message: '请填写科室', trigger: 'blur'}],
336 339
           age: [{required: true, message: "患者年龄不能为空", trigger: 'blur'}],

+ 18 - 16
src/xt_pages/hospitalStation/components/registerDialog9504.vue Просмотреть файл

@@ -50,16 +50,16 @@
50 50
             </el-form-item>
51 51
 
52 52
 
53
-            <el-form-item label="医疗类别:" prop="medical_care">
54
-                <el-select v-model="form.medical_care"  placeholder="请选择" style="width:100%;">
55
-                    <el-option
56
-                            v-for="(item,index) in medical_care"
57
-                            :key="index"
58
-                            :label="item.label"
59
-                            :value="item.value">
60
-                    </el-option>
61
-                </el-select>
62
-            </el-form-item>
53
+            <!--<el-form-item label="医疗类别:" prop="medical_care">-->
54
+                <!--<el-select v-model="form.medical_care"  placeholder="请选择" style="width:100%;">-->
55
+                    <!--<el-option-->
56
+                            <!--v-for="(item,index) in medical_care"-->
57
+                            <!--:key="index"-->
58
+                            <!--:label="item.label"-->
59
+                            <!--:value="item.value">-->
60
+                    <!--</el-option>-->
61
+                <!--</el-select>-->
62
+            <!--</el-form-item>-->
63 63
 
64 64
 
65 65
             <el-form-item label="证件类型:" prop="certificates" >
@@ -186,12 +186,12 @@
186 186
         read_loading:false,
187 187
         registers: [
188 188
           {value: 11, label: "普通门诊"},
189
-          {value: 12, label: '门诊挂号'},
190
-          {value: 13, label: "急诊"},
189
+          // {value: 12, label: '门诊挂号'},
190
+          // {value: 13, label: "急诊"},
191 191
           {value: 14, label: "门诊特殊病"},
192
-          {value: 15, label: "门诊统筹"},
193
-          {value: 16, label: "门诊慢性病"},
194
-          {value: 21, label: "普通住院"},
192
+          // {value: 15, label: "门诊统筹"},
193
+          // {value: 16, label: "门诊慢性病"},
194
+          // {value: 21, label: "普通住院"},
195 195
         ],
196 196
         medical_care:[
197 197
           {value: 11, label: "普通门诊"},
@@ -241,7 +241,9 @@
241 241
           {value: 4, label: '农保'},
242 242
           {value: 5, label: '会员'},
243 243
           {value: 6, label: '职工'},
244
-          {value: 7, label: '合同'}
244
+          {value: 7, label: '合同'},
245
+          {value: 8, label: '医保自费'},
246
+
245 247
         ],
246 248
         sex: [{
247 249
           value: 1,

+ 125 - 17
src/xt_pages/hospitalStation/doctorDesk.vue Просмотреть файл

@@ -463,6 +463,8 @@
463 463
               obj['id'] = drug_month_prescriptions.advices[a].drug_id;
464 464
               // obj['retail_price'] = obj['retail_price'] +  drug_month_prescriptions.advices[a].drug.retail_price
465 465
               obj['retail_price'] = parseFloat(drug_month_prescriptions.advices[a].price);
466
+              obj['drug'] = drug_month_prescriptions.advices[a].drug
467
+
466 468
               count = count + drug_month_prescriptions.advices[a].prescribing_number
467 469
 
468 470
             }
@@ -476,6 +478,21 @@
476 478
           let count = 0;
477 479
           for (let a = 0; a < project_month_prescriptions.project.length; a++) {
478 480
             if (project_ids[i].price == project_month_prescriptions.project[a].price) {
481
+
482
+              if(project_month_prescriptions.project[a].type == 2){
483
+                obj['statistical_classification'] =  project_month_prescriptions.project[a].project.statistical_classification
484
+                obj['medical_code'] =  project_month_prescriptions.project[a].project.medical_code
485
+                obj['project_name'] =  project_month_prescriptions.project[a].project.project_name
486
+
487
+
488
+              }else if(project_month_prescriptions.project[a].type == 3){
489
+                obj['statistical_classification'] = ""
490
+                obj['medical_code'] =  project_month_prescriptions.project[a].good_info.medical_insurance_number
491
+                obj['project_name'] =  project_month_prescriptions.project[a].good_info.good_name
492
+
493
+              }
494
+              obj['type'] = project_month_prescriptions.project[a].type
495
+
479 496
               obj['project_name'] = project_month_prescriptions.project[a].project.project_name;
480 497
               obj['statistical_classification'] = project_month_prescriptions.project[a].project.statistical_classification;
481 498
               obj['single_dose'] = project_month_prescriptions.project[a].single_dose;
@@ -776,7 +793,6 @@
776 793
             this.patientInfo = response.data.data.xt_info;
777 794
             this.hisPatientInfo = response.data.data.his_info;
778 795
             this.case_history = response.data.data.case_history;
779
-            console.log("病历222222",this.case_history);
780 796
             this.info = response.data.data.info;
781 797
             this.doctors = response.data.data.doctors;
782 798
             this.department = response.data.data.department;
@@ -833,6 +849,9 @@
833 849
             //处方相关
834 850
             this.prescriptionList = response.data.data.prescription;
835 851
 
852
+
853
+
854
+
836 855
             if (response.data.data.prescription.length > 0) {
837 856
               for (let i = 0; i < response.data.data.prescription.length; i++) {
838 857
                 var prescription = response.data.data.prescription[i];
@@ -856,7 +875,8 @@
856 875
                     single_dose_unit: prescription.advices[b].single_dose_unit,
857 876
                     prescribing_number_unit: prescription.advices[b].prescribing_number_unit,
858 877
                     medical_insurance_number: prescription.advices[b].med_list_codg,
859
-                    id: prescription.advices[b].drug_id
878
+                    id: prescription.advices[b].drug_id,
879
+                    drug:prescription.advices[b].drug,
860 880
                   };
861 881
                   tempAdvice.push(obj)
862 882
                 }
@@ -878,7 +898,19 @@
878 898
                     remark: prescription.project[b].remark,
879 899
                     medical_code: prescription.project[b].project.medical_code,
880 900
                     unit: prescription.project[b].project.unit,
901
+                    type: prescription.project[b].type
881 902
                   };
903
+
904
+                  if(prescription.project[b].type == 2){
905
+                    obj['statistical_classification'] =  prescription.project[b].project.statistical_classification
906
+                    obj['medical_code'] =  prescription.project[b].project.medical_code
907
+                    obj['project_name'] =  prescription.project[b].project.project_name
908
+
909
+                  }else if(prescription.project[b].type == 3){
910
+                    obj['statistical_classification'] = ""
911
+                    obj['medical_code'] =  prescription.project[b].good_info.medical_insurance_number
912
+                    obj['project_name'] =  prescription.project[b].good_info.good_name
913
+                  }
882 914
                   tempProject.push(obj)
883 915
                 }
884 916
 
@@ -916,13 +948,16 @@
916 948
                 this.prescriptions.push(obj)
917 949
               }
918 950
             } else {
951
+
952
+
953
+
919 954
               let obj = {
920 955
                 id: 0,
921 956
                 name: '处方' + 1,
922 957
                 advices: [],
923 958
                 project: [],
924 959
                 addition: [],
925
-                orderStatus: 0,
960
+                order_status: 0,
926 961
                 pre_time: nowTime,
927 962
 
928 963
               };
@@ -1046,7 +1081,8 @@
1046 1081
                           single_dose_unit: prescription.advices[b].single_dose_unit,
1047 1082
                           prescribing_number_unit: prescription.advices[b].prescribing_number_unit,
1048 1083
                           medical_insurance_number: prescription.advices[b].med_list_codg,
1049
-                          id: prescription.advices[b].drug_id
1084
+                          id: prescription.advices[b].drug_id,
1085
+                          drug:prescription.advices[b].drug,
1050 1086
                         };
1051 1087
                         tempAdvice.push(obj)
1052 1088
                       }
@@ -1064,8 +1100,19 @@
1064 1100
                           price: prescription.project[b].price,
1065 1101
                           remark: prescription.project[b].remark,
1066 1102
                           medical_code: prescription.project[b].project.medical_code,
1067
-                          unit: prescription.project[b].unit
1103
+                          unit: prescription.project[b].unit,
1104
+                          type: prescription.project[b].type,
1068 1105
                         };
1106
+                        if(prescription.project[b].type == 2){
1107
+                          obj['statistical_classification'] =  prescription.project[b].project.statistical_classification
1108
+                          obj['medical_code'] =  prescription.project[b].project.medical_code
1109
+                          obj['project_name'] =  prescription.project[b].project.project_name
1110
+
1111
+                        }else if(prescription.project[b].type == 3){
1112
+                          obj['statistical_classification'] = ""
1113
+                          obj['medical_code'] =  prescription.project[b].good_info.medical_insurance_number
1114
+                          obj['project_name'] =  prescription.project[b].good_info.good_name
1115
+                        }
1069 1116
                         tempProject.push(obj)
1070 1117
                       }
1071 1118
                       for (let b = 0; b < prescription.addition.length; b++) {
@@ -1106,7 +1153,7 @@
1106 1153
                       advices: [],
1107 1154
                       project: [],
1108 1155
                       addition: [],
1109
-                      orderStatus: 0,
1156
+                      order_status: 0,
1110 1157
                       pre_time: nowTime,
1111 1158
                     };
1112 1159
                     this.prescriptions.push(obj)
@@ -1215,7 +1262,9 @@
1215 1262
                           single_dose_unit: prescription.advices[b].single_dose_unit,
1216 1263
                           prescribing_number_unit: prescription.advices[b].prescribing_number_unit,
1217 1264
                           medical_insurance_number: prescription.advices[b].med_list_codg,
1218
-                          id: prescription.advices[b].drug_id
1265
+                          id: prescription.advices[b].drug_id,
1266
+                          drug:prescription.advices[b].drug,
1267
+
1219 1268
                         };
1220 1269
                         tempAdvice.push(obj)
1221 1270
                       }
@@ -1233,8 +1282,22 @@
1233 1282
                           price: prescription.project[b].price,
1234 1283
                           remark: prescription.project[b].remark,
1235 1284
                           medical_code: prescription.project[b].project.medical_code,
1236
-                          unit: prescription.project[b].unit
1285
+                          unit: prescription.project[b].unit,
1286
+                          type:prescription.project[b].type,
1287
+
1237 1288
                         };
1289
+                        if(prescription.project[b].type == 2){
1290
+                          obj['statistical_classification'] =  prescription.project[b].project.statistical_classification
1291
+                          obj['medical_code'] =  prescription.project[b].project.medical_code
1292
+                          obj['project_name'] =  prescription.project[b].project.project_name
1293
+
1294
+                        }else if(prescription.project[b].type == 3){
1295
+                          obj['statistical_classification'] = ""
1296
+                          obj['medical_code'] =  prescription.project[b].good_info.medical_insurance_number
1297
+                          obj['project_name'] =  prescription.project[b].good_info.good_name
1298
+                        }
1299
+
1300
+
1238 1301
                         tempProject.push(obj)
1239 1302
                       }
1240 1303
                       for (let b = 0; b < prescription.addition.length; b++) {
@@ -1275,7 +1338,7 @@
1275 1338
                       advices: [],
1276 1339
                       project: [],
1277 1340
                       addition: [],
1278
-                      orderStatus: 0,
1341
+                      order_status: 0,
1279 1342
                       pre_time: nowTime,
1280 1343
                     };
1281 1344
                     this.prescriptions.push(obj)
@@ -1385,7 +1448,9 @@
1385 1448
                           single_dose_unit: prescription.advices[b].single_dose_unit,
1386 1449
                           prescribing_number_unit: prescription.advices[b].prescribing_number_unit,
1387 1450
                           medical_insurance_number: prescription.advices[b].med_list_codg,
1388
-                          id: prescription.advices[b].drug_id
1451
+                          id: prescription.advices[b].drug_id,
1452
+                          drug:prescription.advices[b].drug,
1453
+
1389 1454
                         };
1390 1455
                         tempAdvice.push(obj)
1391 1456
                       }
@@ -1403,8 +1468,21 @@
1403 1468
                           price: prescription.project[b].price,
1404 1469
                           remark: prescription.project[b].remark,
1405 1470
                           medical_code: prescription.project[b].project.medical_code,
1406
-                          unit: prescription.project[b].unit
1471
+                          unit: prescription.project[b].unit,
1472
+                          type:prescription.project[b].type,
1473
+
1407 1474
                         };
1475
+                        if(prescription.project[b].type == 2){
1476
+                          obj['statistical_classification'] =  prescription.project[b].project.statistical_classification
1477
+                          obj['medical_code'] =  prescription.project[b].project.medical_code
1478
+                          obj['project_name'] =  prescription.project[b].project.project_name
1479
+
1480
+                        }else if(prescription.project[b].type == 3){
1481
+                          obj['statistical_classification'] = ""
1482
+                          obj['medical_code'] =  prescription.project[b].good_info.medical_insurance_number
1483
+                          obj['project_name'] =  prescription.project[b].good_info.good_name
1484
+                        }
1485
+
1408 1486
                         tempProject.push(obj)
1409 1487
                       }
1410 1488
                       for (let b = 0; b < prescription.addition.length; b++) {
@@ -1445,7 +1523,7 @@
1445 1523
                       advices: [],
1446 1524
                       project: [],
1447 1525
                       addition: [],
1448
-                      orderStatus: 0,
1526
+                      order_status: 0,
1449 1527
                       pre_time: nowTime,
1450 1528
                     };
1451 1529
                     this.prescriptions.push(obj)
@@ -1607,7 +1685,9 @@
1607 1685
                         single_dose_unit: prescription.advices[b].single_dose_unit,
1608 1686
                         prescribing_number_unit: prescription.advices[b].prescribing_number_unit,
1609 1687
                         medical_insurance_number: prescription.advices[b].med_list_codg,
1610
-                        id: prescription.advices[b].drug_id
1688
+                        id: prescription.advices[b].drug_id,
1689
+                        drug:prescription.advices[b].drug,
1690
+
1611 1691
                       };
1612 1692
                       tempAdvice.push(obj)
1613 1693
                     }
@@ -1625,8 +1705,21 @@
1625 1705
                         price: prescription.project[b].price,
1626 1706
                         remark: prescription.project[b].remark,
1627 1707
                         medical_code: prescription.project[b].project.medical_code,
1628
-                        unit: prescription.project[b].unit
1708
+                        unit: prescription.project[b].unit,
1709
+                        type:prescription.project[b].type,
1710
+
1629 1711
                       };
1712
+                      if(prescription.project[b].type == 2){
1713
+                        obj['statistical_classification'] =  prescription.project[b].project.statistical_classification
1714
+                        obj['medical_code'] =  prescription.project[b].project.medical_code
1715
+                        obj['project_name'] =  prescription.project[b].project.project_name
1716
+
1717
+                      }else if(prescription.project[b].type == 3){
1718
+                        obj['statistical_classification'] = ""
1719
+                        obj['medical_code'] =  prescription.project[b].good_info.medical_insurance_number
1720
+                        obj['project_name'] =  prescription.project[b].good_info.good_name
1721
+                      }
1722
+
1630 1723
                       tempProject.push(obj)
1631 1724
                     }
1632 1725
                     for (let b = 0; b < prescription.addition.length; b++) {
@@ -1669,7 +1762,7 @@
1669 1762
                     advices: [],
1670 1763
                     project: [],
1671 1764
                     addition: [],
1672
-                    orderStatus: 0,
1765
+                    order_status: 0,
1673 1766
                     pre_time: nowTime
1674 1767
 
1675 1768
                   };
@@ -1782,7 +1875,9 @@
1782 1875
                       single_dose_unit: prescription.advices[b].single_dose_unit,
1783 1876
                       prescribing_number_unit: prescription.advices[b].prescribing_number_unit,
1784 1877
                       medical_insurance_number: prescription.advices[b].med_list_codg,
1785
-                      id: prescription.advices[b].drug_id
1878
+                      id: prescription.advices[b].drug_id,
1879
+                      drug:prescription.advices[b].drug,
1880
+
1786 1881
                     };
1787 1882
                     tempAdvice.push(obj)
1788 1883
                   }
@@ -1800,8 +1895,21 @@
1800 1895
                       price: prescription.project[b].price,
1801 1896
                       remark: prescription.project[b].remark,
1802 1897
                       medical_code: prescription.project[b].project.medical_code,
1898
+                      type:prescription.project[b].type,
1899
+
1803 1900
                       unit: prescription.project[b].unit
1804 1901
                     };
1902
+                    if(prescription.project[b].type == 2){
1903
+                      obj['statistical_classification'] =  prescription.project[b].project.statistical_classification
1904
+                      obj['medical_code'] =  prescription.project[b].project.medical_code
1905
+                      obj['project_name'] =  prescription.project[b].project.project_name
1906
+
1907
+                    }else if(prescription.project[b].type == 3){
1908
+                      obj['statistical_classification'] = ""
1909
+                      obj['medical_code'] =  prescription.project[b].good_info.medical_insurance_number
1910
+                      obj['project_name'] =  prescription.project[b].good_info.good_name
1911
+                    }
1912
+
1805 1913
                     tempProject.push(obj)
1806 1914
                   }
1807 1915
                   for (let b = 0; b < prescription.addition.length; b++) {
@@ -1842,7 +1950,7 @@
1842 1950
                   advices: [],
1843 1951
                   project: [],
1844 1952
                   addition: [],
1845
-                  orderStatus: 0,
1953
+                  order_status: 0,
1846 1954
                   pre_time: nowTime,
1847 1955
                 };
1848 1956
                 this.prescriptions.push(obj)

+ 7 - 7
src/xt_pages/hospitalStation/index.vue Просмотреть файл

@@ -75,7 +75,7 @@
75 75
         <el-form class="basicForm" :model="form" :rules="rules" ref="form" label-width="100px">
76 76
 
77 77
           <el-form-item label="疾病类型:" prop="sick_type" :validate-event="is_Name">
78
-            <el-select v-model="form.sick_type" placeholder="">
78
+            <el-select filterable v-model="form.sick_type" placeholder="">
79 79
               <el-option
80 80
                 v-for="(item,index) in sick"
81 81
                 :key="index"
@@ -176,12 +176,12 @@
176 176
         read_loading: false,
177 177
         registers: [
178 178
           {value: 11, label: '普通门诊'},
179
-          {value: 12, label: '门诊挂号'},
180
-          {value: 13, label: '急诊'},
179
+          // {value: 12, label: '门诊挂号'},
180
+          // {value: 13, label: '急诊'},
181 181
           {value: 14, label: '门诊特殊病'},
182
-          {value: 15, label: '门诊统筹'},
183
-          {value: 16, label: '门诊慢性病'},
184
-          {value: 21, label: '普通住院'}
182
+          // {value: 15, label: '门诊统筹'},
183
+          // {value: 16, label: '门诊慢性病'},
184
+          // {value: 21, label: '普通住院'}
185 185
 
186 186
         ],
187 187
         sick: [],
@@ -628,7 +628,7 @@
628 628
     },
629 629
     created() {
630 630
 
631
-      if (this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10028) {
631
+      if (this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10028 ||  this.$store.getters.xt_user.org_id == 10138) {
632 632
         this.form.certificates = 2;
633 633
         this.form.id_card_type = 1
634 634
       } else {

+ 26 - 16
src/xt_pages/hospitalStation/listPrint.vue Просмотреть файл

@@ -51,41 +51,50 @@
51 51
       getInfo(order_id) {
52 52
         let params = {
53 53
           id: order_id
54
-        };
54
+        }
55 55
         getHisOrderDetail(params).then(response => {
56 56
           if (response.data.state == 0) {
57
-            this.$message.error(response.data.msg);
57
+            this.$message.error(response.data.msg)
58 58
             return false
59 59
           } else {
60
-            this.order = response.data.data.order;
61
-            this.patient = response.data.data.patient;
62
-            console.log(this.patient);
63
-            this.admin = response.data.data.admin_info;
60
+            this.order = response.data.data.order
61
+            this.patient = response.data.data.patient
62
+            console.log(this.patient)
63
+            this.admin = response.data.data.admin_info
64 64
 
65 65
 
66 66
             for (let i = 0; i < response.data.data.order_info.length; i++) {
67
-              var infos = response.data.data.order_info[i];
67
+              var infos = response.data.data.order_info[i]
68 68
               let obj = {
69 69
                 med_chrgitm_type: this.getType(infos.med_chrgitm_type),
70 70
                 price: infos.pric,
71 71
                 count: infos.cnt
72
-              };
72
+              }
73
+              console.log(infos)
73 74
               if (infos.advice && infos.advice.id == 0 && infos.project && infos.project.id > 0) {
74
-                obj['p_time'] = this.getTimes(infos.project.prescription.ctime);
75
-                obj['name'] = infos.project.project.project_name;
76
-                obj['spec'] = 1;
77
-                obj['unit'] = infos.project.project.unit
75
+                obj['p_time'] = this.getTimes(infos.project.prescription.ctime)
76
+                if(infos.project.type == 2){
77
+                  obj['name'] = infos.project.project.project_name
78
+
79
+
80
+                }else if (infos.project.type == 3){
81
+
82
+                  obj['name'] = infos.project.good_info.good_name
83
+
84
+                }
85
+                obj['spec'] = 1
86
+                obj['unit'] = infos.project.unit
78 87
 
79 88
               }
80 89
 
81 90
               if (infos.advice && infos.advice.id > 0 && infos.project && infos.project.id == 0) {
82
-                obj['p_time'] = this.getTimes(infos.advice.prescription.ctime);
83
-                obj['name'] = infos.advice.advice_name;
84
-                obj['spec'] = infos.advice.drug.drug_spec;
91
+                obj['p_time'] = this.getTimes(infos.advice.prescription.ctime)
92
+                obj['name'] = infos.advice.advice_name
93
+                obj['spec'] = infos.advice.drug.drug_spec
85 94
                 obj['unit'] = infos.advice.drug.max_unit
86 95
 
87 96
               }
88
-              this.list.push(obj);
97
+              this.list.push(obj)
89 98
               this.list.sort(function(a, b) {
90 99
                 return b.p_time < a.p_time ? 1 : -1
91 100
               })
@@ -94,6 +103,7 @@
94 103
           }
95 104
         })
96 105
       },
106
+
97 107
       getType(med_chrgitm_type) {
98 108
         switch (med_chrgitm_type) {
99 109
           case '01':

+ 7 - 1
src/xt_pages/hospitalStation/newStatementPrint.vue Просмотреть файл

@@ -147,6 +147,8 @@
147 147
         //       console.log("doctorporject",doctorPorject)
148 148
         //     }
149 149
         // })
150
+      },  getTimes(time) {
151
+        return uParseTime(time, '{y}-{m}-{d}')
150 152
       },
151 153
       searchAction(){
152 154
 
@@ -221,7 +223,11 @@
221 223
                 that.info['treat_cost_total'] = response.data.data.treatCostTotal;
222 224
                 that.info['treat_cost_self_total'] = response.data.data.treatCostSelfTotal;
223 225
                 that.info['treat_cost_part_self_total'] = response.data.data.treatCostPartSelfTotal;
224
-                console.log(this.info)
226
+
227
+                if(that.paramsObj.settle_type != 1){
228
+                  that.info.begndate = that.getTimes(that.paramsObj.start_time)
229
+                  that.info.enddate = that.getTimes(that.paramsObj.end_time)
230
+                }
225 231
               }
226 232
             })
227 233
             .catch(function (error) {

+ 2 - 2
src/xt_pages/hospitalStation/newStatementPrintTwo.vue Просмотреть файл

@@ -86,14 +86,14 @@
86 86
 
87 87
       },
88 88
       getInfo(obj) {
89
-        if (this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10028) {
89
+        if (this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10028 || this.$store.getters.xt_user.org_id == 10138) {
90 90
           var that = this;
91 91
           axios.get('http://127.0.0.1:9532/sz/api/settle/query', {
92 92
             params: obj
93 93
           })
94 94
             .then(function (response) {
95 95
               if (response.data.state == 0) {
96
-                this.$message.error(response.data.msg);
96
+                // this.$message.error(response.data.msg);
97 97
                 return false
98 98
               } else {
99 99
                 if (response.data.data.failed_code == -10) {

+ 65 - 22
src/xt_pages/hospitalStation/outpatientChargesManagement.vue Просмотреть файл

@@ -310,6 +310,7 @@
310 310
                              v-on:confirm="registerConfirm" v-on:cancel="registerCancel"></register-dialog9504>
311 311
 
312 312
         <charge-dialog ref='charge' v-on:confirm="chargeConfirm" v-on:cancel="chargeCancel"></charge-dialog>
313
+
313 314
         <el-dialog
314 315
                 class="centerDialog"
315 316
                 width="900px"
@@ -401,12 +402,12 @@
401 402
       return {
402 403
         register: [
403 404
           { value: 11, label: '普通门诊' },
404
-          { value: 12, label: '门诊挂号' },
405
-          { value: 13, label: '急诊' },
405
+          // { value: 12, label: '门诊挂号' },
406
+          // { value: 13, label: '急诊' },
406 407
           { value: 14, label: '门诊特殊病' },
407
-          { value: 15, label: '门诊统筹' },
408
-          { value: 16, label: '门诊慢性病' },
409
-          { value: 21, label: '普通住院' }
408
+          // { value: 15, label: '门诊统筹' },
409
+          // { value: 16, label: '门诊慢性病' },
410
+          // { value: 21, label: '普通住院' }
410 411
 
411 412
         ],
412 413
         loading: false,
@@ -581,7 +582,7 @@
581 582
         form['patient_id'] = this.patientInfo.id;
582 583
         form['admin_user_id'] = this.$store.getters.xt_user.user.id;
583 584
         form['order_id'] = this.order.id;
584
-        if (this.$store.getters.xt_user.org_id == 10028 || this.$store.getters.xt_user.org_id == 9504) {
585
+        if (this.$store.getters.xt_user.org_id == 10028 || this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10138) {
585 586
           var that = this;
586 587
           axios.get('http://127.0.0.1:9532/sz/api/settle/get', {
587 588
             params: form
@@ -696,7 +697,7 @@
696 697
         this.loadingone = true;
697 698
 
698 699
         var that = this;
699
-        if (this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10028) {
700
+        if (this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10028 || this.$store.getters.xt_user.org_id == 10138) {
700 701
           axios.get('http://127.0.0.1:9532/sz/api/register/get', {
701 702
             params: forms,
702 703
             headers: {
@@ -787,7 +788,7 @@
787 788
 
788 789
         var that = this;
789 790
 
790
-        if (this.$store.getters.xt_user.org_id == 10028 || this.$store.getters.xt_user.org_id == 9504) {
791
+        if (this.$store.getters.xt_user.org_id == 10028 || this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10138) {
791 792
 
792 793
           axios.get('http://127.0.0.1:9532/sz/api/register/get', {
793 794
             params: forms,
@@ -1028,12 +1029,9 @@
1028 1029
               }
1029 1030
 
1030 1031
               for (let b = 0; b < prescription.project.length; b++) {
1031
-                console.log(prescription.project[b].project.project_name);
1032 1032
                 let obj = {
1033 1033
                   id: prescription.project[b].id,
1034 1034
                   project_id: prescription.project[b].project.id,
1035
-                  project_name: prescription.project[b].project.project_name,
1036
-                  statistical_classification: prescription.project[b].project.statistical_classification,
1037 1035
                   single_dose: prescription.project[b].single_dose,
1038 1036
                   delivery_way: prescription.project[b].delivery_way,
1039 1037
                   execution_frequency: prescription.project[b].execution_frequency,
@@ -1041,9 +1039,22 @@
1041 1039
                   total: prescription.project[b].count.toString(),
1042 1040
                   price: prescription.project[b].price,
1043 1041
                   remark: prescription.project[b].remark,
1044
-                  medical_code: prescription.project[b].project.medical_code,
1045
-                  unit: prescription.project[b].unit
1042
+                  // medical_code: prescription.project[b].project.medical_code,
1043
+                  unit: prescription.project[b].unit,
1044
+                  type:prescription.project[b].type,
1045
+
1046 1046
                 };
1047
+                if(prescription.project[b].type == 2){
1048
+                  obj['statistical_classification'] =  prescription.project[b].project.statistical_classification
1049
+                  obj['medical_code'] =  prescription.project[b].project.medical_code
1050
+                  obj['project_name'] =  prescription.project[b].project.project_name
1051
+
1052
+                }else if(prescription.project[b].type == 3){
1053
+                  obj['statistical_classification'] = ""
1054
+                  obj['medical_code'] =  prescription.project[b].good_info.medical_insurance_number
1055
+                  obj['project_name'] =  prescription.project[b].good_info.good_name
1056
+                }
1057
+
1047 1058
 
1048 1059
                 tempProject.push(obj)
1049 1060
               }
@@ -2606,13 +2617,29 @@
2606 2617
           let count = 0;
2607 2618
           for (let a = 0; a < project_month_prescriptions.project.length; a++) {
2608 2619
             if (project_ids[i].price == project_month_prescriptions.project[a].price && project_ids[i].id == project_month_prescriptions.project[a].project_id) {
2609
-              obj['project_name'] = project_month_prescriptions.project[a].project.project_name;
2610
-              obj['statistical_classification'] = project_month_prescriptions.project[a].project.statistical_classification;
2620
+
2621
+              if(project_month_prescriptions.project[a].type == 2){
2622
+                obj['statistical_classification'] =  project_month_prescriptions.project[a].project.statistical_classification
2623
+                obj['medical_code'] =  project_month_prescriptions.project[a].project.medical_code
2624
+                obj['project_name'] =  project_month_prescriptions.project[a].project.project_name
2625
+                obj['type'] = 2
2626
+
2627
+              }else if(project_month_prescriptions.project[a].type == 3){
2628
+                obj['statistical_classification'] = ""
2629
+                obj['medical_code'] =  project_month_prescriptions.project[a].good_info.medical_insurance_number
2630
+                obj['project_name'] =  project_month_prescriptions.project[a].good_info.good_name
2631
+                obj['type'] = 3
2632
+
2633
+              }
2634
+
2635
+
2636
+              // obj['project_name'] = project_month_prescriptions.project[a].project.project_name;
2637
+              // obj['statistical_classification'] = project_month_prescriptions.project[a].project.statistical_classification;
2611 2638
               obj['single_dose'] = project_month_prescriptions.project[a].single_dose;
2612 2639
               obj['delivery_way'] = project_month_prescriptions.project[a].delivery_way;
2613 2640
               obj['execution_frequency'] = project_month_prescriptions.project[a].execution_frequency;
2614 2641
               obj['number_days'] = project_month_prescriptions.project[a].day;
2615
-              obj['medical_code'] = project_month_prescriptions.project[a].project.medical_code;
2642
+              // obj['medical_code'] = project_month_prescriptions.project[a].project.medical_code;
2616 2643
               obj['unit'] = project_month_prescriptions.project[a].unit;
2617 2644
               obj['project_id'] = project_month_prescriptions.project[a].project_id;
2618 2645
               count = count + project_month_prescriptions.project[a].count;
@@ -2800,12 +2827,11 @@
2800 2827
               }
2801 2828
 
2802 2829
               for (let b = 0; b < prescription.project.length; b++) {
2803
-                console.log(prescription.project[b].project.project_name);
2804 2830
                 let obj = {
2805 2831
                   id: prescription.project[b].id,
2806 2832
                   project_id: prescription.project[b].project.id,
2807
-                  project_name: prescription.project[b].project.project_name,
2808
-                  statistical_classification: prescription.project[b].project.statistical_classification,
2833
+                  // project_name: prescription.project[b].project.project_name,
2834
+                  // statistical_classification: prescription.project[b].project.statistical_classification,
2809 2835
                   single_dose: prescription.project[b].single_dose,
2810 2836
                   delivery_way: prescription.project[b].delivery_way,
2811 2837
                   execution_frequency: prescription.project[b].execution_frequency,
@@ -2813,9 +2839,25 @@
2813 2839
                   total: prescription.project[b].count.toString(),
2814 2840
                   price: prescription.project[b].price,
2815 2841
                   remark: prescription.project[b].remark,
2816
-                  medical_code: prescription.project[b].project.medical_code,
2817
-                  unit: prescription.project[b].project.unit
2842
+                  // medical_code: prescription.project[b].project.medical_code,
2843
+                  unit: prescription.project[b].project.unit,
2844
+                  type:prescription.project[b].type,
2845
+
2818 2846
                 };
2847
+
2848
+                if(prescription.project[b].type == 2){
2849
+                  obj['statistical_classification'] =  prescription.project[b].project.statistical_classification
2850
+                  obj['medical_code'] =  prescription.project[b].project.medical_code
2851
+                  obj['project_name'] =  prescription.project[b].project.project_name
2852
+
2853
+                }else if(prescription.project[b].type == 3){
2854
+                  obj['statistical_classification'] = ""
2855
+                  obj['medical_code'] =  prescription.project[b].good_info.medical_insurance_number
2856
+                  obj['project_name'] =  prescription.project[b].good_info.good_name
2857
+                }
2858
+
2859
+
2860
+
2819 2861
                 tempProject.push(obj)
2820 2862
               }
2821 2863
 
@@ -2977,7 +3019,7 @@
2977 3019
             })
2978 3020
               .then(function(response) {
2979 3021
                 if (response.data.state == 0) {
2980
-                  that.$message.error(response.data.msg);
3022
+                  // that.$message.error(response.data.msg);
2981 3023
                   return false
2982 3024
                 } else {
2983 3025
                   if (response.data.data.failed_code == -10) {
@@ -3098,6 +3140,7 @@
3098 3140
         let paramsObj = {
3099 3141
           order_id: this.hisPatientInfo.id,
3100 3142
           patient_id: this.hisPatientInfo.patient_id,
3143
+          record_time:this.record_date,
3101 3144
           name:this.hisPatientInfo.name,
3102 3145
           gend:this.hisPatientInfo.gend,
3103 3146
           setl_time:this.hisPatientInfo.out_hosptial_time

+ 9 - 4
src/xt_pages/hospitalStation/summary.vue Просмотреть файл

@@ -100,7 +100,7 @@
100 100
           <template slot-scope="scope">
101 101
             <el-button size="mini" type="primary" @click="toDetail(scope.row)">详情</el-button>
102 102
             <el-button size="mini" type="primary" @click="toPrint(scope.row)"
103
-                       v-if="(scope.row.order_status == 2 && $store.getters.xt_user.org_id == 9504) || (scope.row.order_status == 2 && $store.getters.xt_user.org_id == 9919) ||  ($store.getters.xt_user.org_id == 10106) ||  (scope.row.order_status == 2 && $store.getters.xt_user.org_id == 4) || ($store.getters.xt_user.org_id == 9990) ">
103
+                       v-if="(scope.row.order_status == 2 && $store.getters.xt_user.org_id == 10138) || (scope.row.order_status == 2 && $store.getters.xt_user.org_id == 9504) || (scope.row.order_status == 2 && $store.getters.xt_user.org_id == 9919) ||  ($store.getters.xt_user.org_id == 10106) ||  (scope.row.order_status == 2 && $store.getters.xt_user.org_id == 4) || ($store.getters.xt_user.org_id == 9990) ">
104 104
               结算单
105 105
             </el-button>
106 106
             <el-button size="mini" type="primary" @click="toRefund(scope.row)"
@@ -499,19 +499,24 @@
499 499
         }
500 500
       },
501 501
       toPrint(row) {
502
-        if (this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10028) {
502
+        if (this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10028 || (scope.row.order_status == 2 && $store.getters.xt_user.org_id == 10138)){
503 503
           this.statementVisible9504 = true;
504 504
           let obj = {
505 505
             order_id: row.id,
506 506
             patient_id: row.patient_id,
507 507
             record_time: this.getTimes(row.settle_accounts_date),
508
-            admin_user_id: this.$store.getters.xt_user.user.id
508
+            admin_user_id: this.$store.getters.xt_user.user.id,
509
+
510
+
509 511
           };
510 512
           this.orderObj9504 = obj
511 513
         } else {
512 514
           this.statementVisible = true;
513 515
           let obj = {
514
-            order_id: row.id
516
+            order_id: row.id,
517
+            settle_type:row.settle_type,
518
+            start_time:row.settle_start_time,
519
+            end_time:row.settle_end_time,
515 520
           };
516 521
           this.orderObj = obj
517 522
         }

+ 294 - 284
src/xt_pages/hospitalStation/summaryDetail.vue Просмотреть файл

@@ -3,99 +3,99 @@
3 3
         <div class="position">
4 4
             <bread-crumb :crumbs='crumbs'></bread-crumb>
5 5
         </div>
6
-      <el-popover
7
-        placement="bottom"
8
-        width="210"
9
-        trigger="click">
10
-        <el-button size="small" ref="button_two" @click="open(1)">打印清单</el-button>
11
-        <el-button size="small" ref="button_six" @click="open(2)">打印汇总</el-button>
12
-        <el-button  slot="reference" style="margin:10px 10px;float: right" type="primary" size="small" >打印</el-button>
13
-
14
-      </el-popover>
6
+        <el-popover
7
+                placement="bottom"
8
+                width="210"
9
+                trigger="click">
10
+            <el-button size="small" ref="button_two" @click="open(1)">打印清单</el-button>
11
+            <el-button size="small" ref="button_six" @click="open(2)">打印汇总</el-button>
12
+            <el-button  slot="reference" style="margin:10px 10px;float: right" type="primary" size="small" >打印</el-button>
13
+
14
+        </el-popover>
15 15
         <div class="app-container" style="display:flex;flex: 1;padding: 20px 20px 0px 20px;">
16 16
             <div class="mainCenter">
17 17
                 <div class="centerLeft">
18 18
                     <div class="tabsBox">
19
-                      <el-table  :data="tableData" border style="width: 100%;"
20
-                                :row-style="{ color: '#303133' }"
21
-                                :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}" highlight-current-row>
22
-
23
-                        <el-table-column align="center" prop="project_name" label="名称">
24
-                          <template slot-scope="scope">{{ scope.row.name }}</template>
25
-                        </el-table-column>
26
-
27
-                        <el-table-column align="center" prop="project_name" label="分类" width="100">
28
-                          <template slot-scope="scope">{{ scope.row.type == 1?'药品':'项目' }}</template>
29
-                        </el-table-column>
30
-
31
-
32
-                        <el-table-column align="center" prop="single_dose" width="80" label="单次用量">
33
-                          <template slot-scope="scope">{{scope.row.single_dose}}&nbsp;&nbsp;{{scope.row.single_dose_unit}}</template>
34
-
35
-                        </el-table-column>
36
-                        <el-table-column align="center" prop="delivery_way" width="90" label="用法">
37
-                          <template slot-scope="scope">
38
-                            <!--<el-input v-model="scope.row.delivery_way" placeholder="" readonly></el-input>-->
39
-                            {{scope.row.delivery_way}}
40
-
41
-                          </template>
42
-                        </el-table-column>
43
-                        <el-table-column align="center" prop="execution_frequency" width="90" label="频率">
44
-                          <template slot-scope="scope">{{scope.row.execution_frequency}}</template>
45
-                        </el-table-column>
46
-                        <el-table-column align="center" prop="number_days" width="60" label="天数">
47
-                          <template slot-scope="scope">
48
-                            <!--<el-input v-model="scope.row.number_days" placeholder="" readonly></el-input>-->
49
-                            {{scope.row.day}}天
50
-
51
-                          </template>
52
-                        </el-table-column>
53
-                        <el-table-column align="center" prop="total" width="60" label="总量">
54
-                          <template slot-scope="scope">{{scope.row.count}}&nbsp;&nbsp;{{scope.row.prescribing_number_unit}}</template>
55
-                        </el-table-column>
56
-                        <el-table-column align="center" prop="name" width="60" label="单价">
57
-                          <template slot-scope="scope">
58
-                            <!--<el-input v-model="scope.row.price" placeholder="" readonly></el-input>-->
59
-                            {{scope.row.price}}元
60
-
61
-                          </template>
62
-                        </el-table-column>
63
-
64
-                          <el-table-column align="center" prop="name" width="60" label="总价">
65
-                              <template slot-scope="scope">
66
-                                  <!--<el-input v-model="scope.row.price" placeholder="" readonly></el-input>-->
67
-                                  {{scope.row.price}}元
68
-
69
-                              </template>
70
-                          </el-table-column>
71
-
72
-
73
-                        <el-table-column align="center" prop="name" width="80" label="备注">
74
-                          <template slot-scope="scope">
75
-                            <!--<el-input v-model="scope.row.remark" readonly></el-input>-->
76
-                            {{scope.row.remark}}
77
-
78
-                          </template>
79
-                        </el-table-column>
80
-                      </el-table>
81
-
82
-                      <div class="additionalBox">
83
-                        <div class="additionalOne" v-for="(item,index) in additions" :key="index">
84
-                          <span :title="item.item_name">{{item.item_name}}</span>
85
-                          <el-input v-model="item.price" placeholder="" style="width:50px;" readonly></el-input>
86
-                          共
87
-                          <el-input v-model="item.count" placeholder="" style="width:50px;" readonly></el-input>
88
-                          次
89
-                          <!--<i class="el-icon-delete deleteIcon" @click="delAddition(index,item)"></i>-->
19
+                        <el-table  :data="tableData" border style="width: 100%;"
20
+                                   :row-style="{ color: '#303133' }"
21
+                                   :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}" highlight-current-row>
22
+
23
+                            <el-table-column align="center" prop="project_name" label="名称">
24
+                                <template slot-scope="scope">{{ scope.row.name }}</template>
25
+                            </el-table-column>
26
+
27
+                            <el-table-column align="center" prop="project_name" label="分类" width="100">
28
+                                <template slot-scope="scope">{{ scope.row.type == 1?'药品': scope.row.project_type == 2? '项目':'耗材'}}</template>
29
+                            </el-table-column>
30
+
31
+
32
+                            <el-table-column align="center" prop="single_dose" width="80" label="单次用量">
33
+                                <template slot-scope="scope">{{scope.row.single_dose}}&nbsp;&nbsp;{{scope.row.single_dose_unit}}</template>
34
+
35
+                            </el-table-column>
36
+                            <el-table-column align="center" prop="delivery_way" width="90" label="用法">
37
+                                <template slot-scope="scope">
38
+                                    <!--<el-input v-model="scope.row.delivery_way" placeholder="" readonly></el-input>-->
39
+                                    {{scope.row.delivery_way}}
40
+
41
+                                </template>
42
+                            </el-table-column>
43
+                            <el-table-column align="center" prop="execution_frequency" width="90" label="频率">
44
+                                <template slot-scope="scope">{{scope.row.execution_frequency}}</template>
45
+                            </el-table-column>
46
+                            <el-table-column align="center" prop="number_days" width="60" label="天数">
47
+                                <template slot-scope="scope">
48
+                                    <!--<el-input v-model="scope.row.number_days" placeholder="" readonly></el-input>-->
49
+                                    {{scope.row.day}}天
50
+
51
+                                </template>
52
+                            </el-table-column>
53
+                            <el-table-column align="center" prop="total" width="60" label="总量">
54
+                                <template slot-scope="scope">{{scope.row.count}}&nbsp;&nbsp;{{scope.row.prescribing_number_unit}}</template>
55
+                            </el-table-column>
56
+                            <el-table-column align="center" prop="name" width="60" label="单价">
57
+                                <template slot-scope="scope">
58
+                                    <!--<el-input v-model="scope.row.price" placeholder="" readonly></el-input>-->
59
+                                    {{scope.row.price}}元
60
+
61
+                                </template>
62
+                            </el-table-column>
63
+
64
+                            <el-table-column align="center" prop="name" width="60" label="总价">
65
+                                <template slot-scope="scope">
66
+                                    <!--<el-input v-model="scope.row.price" placeholder="" readonly></el-input>-->
67
+                                    {{scope.row.price}}元
68
+
69
+                                </template>
70
+                            </el-table-column>
71
+
72
+
73
+                            <el-table-column align="center" prop="name" width="80" label="备注">
74
+                                <template slot-scope="scope">
75
+                                    <!--<el-input v-model="scope.row.remark" readonly></el-input>-->
76
+                                    {{scope.row.remark}}
77
+
78
+                                </template>
79
+                            </el-table-column>
80
+                        </el-table>
81
+
82
+                        <div class="additionalBox">
83
+                            <div class="additionalOne" v-for="(item,index) in additions" :key="index">
84
+                                <span :title="item.item_name">{{item.item_name}}</span>
85
+                                <el-input v-model="item.price" placeholder="" style="width:50px;" readonly></el-input>
86
+                                共
87
+                                <el-input v-model="item.count" placeholder="" style="width:50px;" readonly></el-input>
88
+                                次
89
+                                <!--<i class="el-icon-delete deleteIcon" @click="delAddition(index,item)"></i>-->
90
+                            </div>
90 91
                         </div>
91
-                      </div>
92 92
 
93 93
                     </div>
94 94
                     <div class="costBox">
95
-                      <span>当前处方总费用:<span style="color:red;">{{ order.medfee_sumamt}}元</span></span>
96
-                      <span v-if="order.order_status == 1">待结算</span>
97
-                      <span v-if="order.order_status == 2">已结算</span>
98
-                      <span v-if="order.order_status == 3">已退费</span>
95
+                        <span>当前处方总费用:<span style="color:red;">{{ order.medfee_sumamt}}元</span></span>
96
+                        <span v-if="order.order_status == 1">待结算</span>
97
+                        <span v-if="order.order_status == 2">已结算</span>
98
+                        <span v-if="order.order_status == 3">已退费</span>
99 99
 
100 100
 
101 101
                     </div>
@@ -121,37 +121,36 @@
121 121
                     </ul>
122 122
                     <!--<p class="centerRightTitle">发票费用</p>-->
123 123
                     <!--<ul class="basicUl">-->
124
-                        <!--<li style="width:100%;">西药费:0.00元</li>-->
124
+                    <!--<li style="width:100%;">西药费:0.00元</li>-->
125 125
                     <!--</ul>-->
126 126
                 </div>
127 127
             </div>
128 128
         </div>
129 129
 
130
-      <div v-if="listVisible">
131
-      <el-dialog
132
-        class="centerDialog"
133
-        width="900px"
134
-        title="打印"
135
-        :visible.sync="listVisible">
136
-        <list-print  :paramsObj='paramsObj'></list-print>
137
-      </el-dialog>
138
-      </div>
139
-
140
-      <div v-if="allListVisible">
141
-      <el-dialog
142
-        class="centerDialog"
143
-        width="900px"
144
-        title="打印"
145
-        :visible.sync="allListVisible">
146
-        <all-list-print :paramsObj='paramsObj'></all-list-print>
147
-      </el-dialog>
148
-      </div>
130
+        <div v-if="listVisible">
131
+            <el-dialog
132
+                    class="centerDialog"
133
+                    width="900px"
134
+                    title="打印"
135
+                    :visible.sync="listVisible">
136
+                <list-print  :paramsObj='paramsObj'></list-print>
137
+            </el-dialog>
138
+        </div>
139
+
140
+        <div v-if="allListVisible">
141
+            <el-dialog
142
+                    class="centerDialog"
143
+                    width="900px"
144
+                    title="打印"
145
+                    :visible.sync="allListVisible">
146
+                <all-list-print :paramsObj='paramsObj'></all-list-print>
147
+            </el-dialog>
148
+        </div>
149 149
 
150 150
 
151 151
     </div>
152 152
 </template>
153 153
 
154
-
155 154
 <script>
156 155
 import BreadCrumb from '@/xt_pages/components/bread-crumb'
157 156
 import { getHisOrder } from '@/api/his/his'
@@ -161,65 +160,65 @@ import ListPrint from './listPrint'
161 160
 import AllListPrint from './allListPrint'
162 161
 
163 162
 export default {
164
-    components:{
165
-      AllListPrint,
166
-      ListPrint,
167
-        BreadCrumb,
168
-      prescriptionTable,
169
-
170
-    },
171
-    data(){
172
-        return{
173
-          listVisible:false,
174
-          allListVisible:false,
175
-          paramsObj:{
176
-            id:this.$route.query.id
177
-          },
178
-            crumbs: [
179
-                { path: false, name: '门诊收费' },
180
-                { path: false, name: '项目消费明细汇总详情' }
181
-            ],
182
-          info: {},
183
-          curPrescriptions: {},
184
-          prescriptions: [],
185
-          record_date: '',
186
-          tableData: [],
187
-          additions:[],
188
-          editableTabsValue: '1',
189
-          loadingone: false,
190
-          editableTabs: [{
191
-            title: '处方1',
192
-            name: '1'
193
-          }],
194
-          tabIndex: 1,
195
-          hisPatientInfo: {},
196
-          loadingtwo: false,
197
-          patientTableData: [{
198
-            name: '杨美英',
199
-            mdtrt_id: '1709946'
200
-          }],
201
-          patientInfo: { id: 0 },
202
-          doctor: {},
203
-          total: 0,
204
-          state: '未收费',
205
-          radio: 1,
206
-          radioStatus: 1,
207
-          search_input: '',
208
-          order:{},
209
-        }
210
-    },created(){
211
-      this.GetOrderDetail()
212
-  },methods:{
213
-      open(val){
214
-        if(val == 1){
215
-          this.paramsObj.id == this.$route.query.id;
216
-          this.listVisible = true
217
-
218
-        }else if(val == 2){
219
-          this.paramsObj.id == this.$route.query.id;
220
-          this.allListVisible = true
221
-        }
163
+  components:{
164
+    AllListPrint,
165
+    ListPrint,
166
+    BreadCrumb,
167
+    prescriptionTable,
168
+
169
+  },
170
+  data(){
171
+    return{
172
+      listVisible:false,
173
+      allListVisible:false,
174
+      paramsObj:{
175
+        id:this.$route.query.id
222 176
       },
177
+      crumbs: [
178
+        { path: false, name: '门诊收费' },
179
+        { path: false, name: '项目消费明细汇总详情' }
180
+      ],
181
+      info: {},
182
+      curPrescriptions: {},
183
+      prescriptions: [],
184
+      record_date: '',
185
+      tableData: [],
186
+      additions:[],
187
+      editableTabsValue: '1',
188
+      loadingone: false,
189
+      editableTabs: [{
190
+        title: '处方1',
191
+        name: '1'
192
+      }],
193
+      tabIndex: 1,
194
+      hisPatientInfo: {},
195
+      loadingtwo: false,
196
+      patientTableData: [{
197
+        name: '杨美英',
198
+        mdtrt_id: '1709946'
199
+      }],
200
+      patientInfo: { id: 0 },
201
+      doctor: {},
202
+      total: 0,
203
+      state: '未收费',
204
+      radio: 1,
205
+      radioStatus: 1,
206
+      search_input: '',
207
+      order:{},
208
+    }
209
+  },created(){
210
+    this.GetOrderDetail()
211
+  },methods:{
212
+    open(val){
213
+      if(val == 1){
214
+        this.paramsObj.id == this.$route.query.id
215
+        this.listVisible = true
216
+
217
+      }else if(val == 2){
218
+        this.paramsObj.id == this.$route.query.id
219
+        this.allListVisible = true
220
+      }
221
+    },
223 222
     // getTotal() {
224 223
     //   var total = 0
225 224
     //   for (let i = 0; i < this.prescriptions.length; i++) {
@@ -253,8 +252,8 @@ export default {
253 252
     tabclickEvent(val) {
254 253
       for (let i = 0; i < this.prescriptions.length; i++) {
255 254
         if (this.prescriptions[i].name == val.name) {
256
-          this.curPrescriptions = {};
257
-          var temp = this.deepClone(this.prescriptions[i]);
255
+          this.curPrescriptions = {}
256
+          var temp = this.deepClone(this.prescriptions[i])
258 257
           this.curPrescriptions = temp
259 258
         }
260 259
       }
@@ -263,18 +262,18 @@ export default {
263 262
       if (!source && typeof source !== 'object') {
264 263
         throw new Error('error arguments', 'shallowClone')
265 264
       }
266
-      const targetObj = source.constructor === Array ? [] : {};
265
+      const targetObj = source.constructor === Array ? [] : {}
267 266
       Object.keys(source).forEach((keys) => {
268 267
         if (source[keys] && typeof source[keys] === 'object') {
269 268
           targetObj[keys] = this.deepClone(source[keys])
270 269
         } else {
271 270
           targetObj[keys] = source[keys]
272 271
         }
273
-      });
272
+      })
274 273
       return targetObj
275 274
     },  getGroup(id){
276
-      var name = "";
277
-      var statistics_category =  getDictionaryDataConfig('system','statistics_category');
275
+      var name = ""
276
+      var statistics_category =  getDictionaryDataConfig('system','statistics_category')
278 277
       for(let i=0;i<statistics_category.length;i++){
279 278
         if(id == statistics_category[i].id){
280 279
           name = statistics_category[i].name
@@ -283,7 +282,7 @@ export default {
283 282
       return name
284 283
     },
285 284
     getTotal() {
286
-      var total = 0;
285
+      var total = 0
287 286
       for (let i = 0; i < this.prescriptions.length; i++) {
288 287
         if (this.prescriptions[i].advices != null) {
289 288
           for (let a = 0; a < this.prescriptions[i].advices.length; a++) {
@@ -304,7 +303,7 @@ export default {
304 303
       }
305 304
     },  unique(array) {
306 305
       // res用来存储结果
307
-      var res = [];
306
+      var res = []
308 307
       for (var i = 0, arrayLen = array.length; i < arrayLen; i++) {
309 308
         for (var j = 0, resLen = res.length; j < resLen; j++) {
310 309
           if (array[i].id === res[j].id && array[i].price === res[j].price) {
@@ -319,22 +318,22 @@ export default {
319 318
       return res
320 319
     },
321 320
     setMonthPrescription(month_prescriptions) {
322
-      console.log(month_prescriptions);
321
+      console.log(month_prescriptions)
323 322
       let drug_month_prescriptions = {
324 323
         advices: []
325
-      };
326
-      let drug_ids = [];
324
+      }
325
+      let drug_ids = []
327 326
       let project_month_prescriptions = {
328 327
         project: []
329 328
 
330
-      };
331
-      let project_ids = [];
329
+      }
330
+      let project_ids = []
332 331
 
333 332
       let addition_month_prescriptions = {
334 333
         addition: []
335 334
 
336
-      };
337
-      let additions_ids = [];
335
+      }
336
+      let additions_ids = []
338 337
 
339 338
       for (let i = 0; i < month_prescriptions.length; i++) {
340 339
         if (month_prescriptions[i].type == 1) { //药品
@@ -343,8 +342,8 @@ export default {
343 342
               id: month_prescriptions[i].advices[a].drug_id,
344 343
               price: month_prescriptions[i].advices[a].price
345 344
 
346
-            };
347
-            drug_ids.push(obj);
345
+            }
346
+            drug_ids.push(obj)
348 347
             drug_month_prescriptions.advices.push(month_prescriptions[i].advices[a])
349 348
           }
350 349
 
@@ -354,8 +353,8 @@ export default {
354 353
               id: month_prescriptions[i].project[a].project_id,
355 354
               price: month_prescriptions[i].project[a].price
356 355
 
357
-            };
358
-            project_ids.push(obj);
356
+            }
357
+            project_ids.push(obj)
359 358
             project_month_prescriptions.project.push(month_prescriptions[i].project[a])
360 359
           }
361 360
         }
@@ -365,84 +364,94 @@ export default {
365 364
             id: month_prescriptions[i].addition[a].item_id,
366 365
             price: month_prescriptions[i].addition[a].price
367 366
 
368
-          };
369
-          additions_ids.push(obj);
367
+          }
368
+          additions_ids.push(obj)
370 369
           addition_month_prescriptions.addition.push(month_prescriptions[i].addition[a])
371 370
 
372 371
         }
373 372
 
374 373
       }
375 374
 
376
-      drug_ids = this.unique(drug_ids);
377
-      project_ids= this.unique(project_ids);
378
-      additions_ids= this.unique(additions_ids);
375
+      drug_ids = this.unique(drug_ids)
376
+      project_ids= this.unique(project_ids)
377
+      additions_ids= this.unique(additions_ids)
379 378
 
380 379
 
381 380
 
382 381
 
383 382
 
384 383
       for (let i = 0; i < drug_ids.length; i++) {
385
-        let obj = {};
386
-        let count = 0;
384
+        let obj = {}
385
+        let count = 0
387 386
         for (let a = 0; a < drug_month_prescriptions.advices.length; a++) {
388 387
           if (drug_ids[i].price == drug_month_prescriptions.advices[a].price && drug_ids[i].id ==  drug_month_prescriptions.advices[a].drug_id) {
389
-            obj['name'] = drug_month_prescriptions.advices[a].advice_name;
390
-            obj['statistical_classification'] = '';
391
-            obj['type'] = 1;
392
-            obj['single_dose'] = drug_month_prescriptions.advices[a].single_dose;
393
-            obj['delivery_way'] = drug_month_prescriptions.advices[a].delivery_way;
394
-            obj['execution_frequency'] = drug_month_prescriptions.advices[a].execution_frequency;
395
-            obj['day'] = drug_month_prescriptions.advices[a].day;
396
-            obj['prescribing_number_unit'] = drug_month_prescriptions.advices[a].prescribing_number_unit;
397
-            obj['remark'] = drug_month_prescriptions.advices[a].remark;
398
-            obj['price'] = parseFloat(drug_month_prescriptions.advices[a].price);
388
+            obj['name'] = drug_month_prescriptions.advices[a].advice_name
389
+            obj['statistical_classification'] = ''
390
+            obj['type'] = 1
391
+            obj['single_dose'] = drug_month_prescriptions.advices[a].single_dose
392
+            obj['delivery_way'] = drug_month_prescriptions.advices[a].delivery_way
393
+            obj['execution_frequency'] = drug_month_prescriptions.advices[a].execution_frequency
394
+            obj['day'] = drug_month_prescriptions.advices[a].day
395
+            obj['prescribing_number_unit'] = drug_month_prescriptions.advices[a].prescribing_number_unit
396
+            obj['remark'] = drug_month_prescriptions.advices[a].remark
397
+            obj['price'] = parseFloat(drug_month_prescriptions.advices[a].price)
399 398
             count = count + drug_month_prescriptions.advices[a].prescribing_number
400 399
 
401 400
           }
402 401
         }
403
-        obj['count'] = count;
402
+        obj['count'] = count
404 403
         this.tableData.push(obj)
405 404
       }
406 405
 
407 406
       for (let i = 0; i < project_ids.length; i++) {
408
-        let obj = {};
409
-        let count = 0;
407
+        let obj = {}
408
+        let count = 0
410 409
         for (let a = 0; a < project_month_prescriptions.project.length; a++) {
411 410
           if (project_ids[i].price == project_month_prescriptions.project[a].price &&project_ids[i].id == project_month_prescriptions.project[a].project_id ) {
412
-            obj['name'] = project_month_prescriptions.project[a].project.project_name;
413
-            obj['statistical_classification'] = '';
414
-            obj['single_dose'] = project_month_prescriptions.project[a].single_dose;
415
-            obj['delivery_way'] = project_month_prescriptions.project[a].delivery_way;
416
-            obj['execution_frequency'] = project_month_prescriptions.project[a].execution_frequency;
417
-            obj['day'] = project_month_prescriptions.project[a].day;
418
-            obj['single_dose_unit'] = project_month_prescriptions.project[a].unit;
419
-            obj['prescribing_number_unit'] = project_month_prescriptions.project[a].unit;
420
-            count = count + project_month_prescriptions.project[a].count;
421
-            obj['price'] = parseFloat(project_month_prescriptions.project[a].price);
422
-            obj['remark'] = project_month_prescriptions.project[a].remark;
411
+
412
+            if(project_month_prescriptions.project[a].type == 2){
413
+              obj['name'] = project_month_prescriptions.project[a].project.project_name
414
+              obj['statistical_classification'] = ''
415
+              obj['project_type'] = 2
416
+
417
+
418
+            }else if (project_month_prescriptions.project[a].type == 3){
419
+              obj['name'] = project_month_prescriptions.project[a].good_info.good_name
420
+              obj['statistical_classification'] = ''
421
+              obj['project_type'] = 3
422
+            }
423
+            obj['single_dose'] = project_month_prescriptions.project[a].single_dose
424
+            obj['delivery_way'] = project_month_prescriptions.project[a].delivery_way
425
+            obj['execution_frequency'] = project_month_prescriptions.project[a].execution_frequency
426
+            obj['day'] = project_month_prescriptions.project[a].day
427
+            obj['single_dose_unit'] = project_month_prescriptions.project[a].unit
428
+            obj['prescribing_number_unit'] = project_month_prescriptions.project[a].unit
429
+            count = count + project_month_prescriptions.project[a].count
430
+            obj['price'] = parseFloat(project_month_prescriptions.project[a].price)
431
+            obj['remark'] = project_month_prescriptions.project[a].remark
423 432
             obj['type'] = 2
424 433
 
425 434
 
426 435
           }
427 436
         }
428
-        obj['count'] = count;
437
+        obj['count'] = count
429 438
         this.tableData.push(obj)
430 439
 
431 440
       }
432 441
 
433 442
       for (let i = 0; i < additions_ids.length; i++) {
434
-        let obj = {};
435
-        let count = 0;
436
-        console.log(addition_month_prescriptions.addition);
443
+        let obj = {}
444
+        let count = 0
445
+        console.log(addition_month_prescriptions.addition)
437 446
         if (addition_month_prescriptions.addition) {
438 447
           for (let a = 0; a < addition_month_prescriptions.addition.length; a++) {
439 448
             if (additions_ids[i].price == addition_month_prescriptions.addition[a].price &&additions_ids[i].id == addition_month_prescriptions.addition[a].item_id) {
440
-              obj['item_name'] = addition_month_prescriptions.addition[a].item_name;
441
-              count = count + addition_month_prescriptions.addition[a].count;
449
+              obj['item_name'] = addition_month_prescriptions.addition[a].item_name
450
+              count = count + addition_month_prescriptions.addition[a].count
442 451
               obj['price'] = parseFloat(addition_month_prescriptions.addition[a].price)
443 452
             }
444 453
           }
445
-          obj['count'] = count;
454
+          obj['count'] = count
446 455
           this.additions.push(obj)
447 456
 
448 457
         }
@@ -454,23 +463,23 @@ export default {
454 463
       let params={
455 464
         number:this.$route.query.number,
456 465
         patient_id:this.$route.query.patient_id,
457
-      };
466
+      }
458 467
       getHisOrder(params).then(response => {
459 468
         if (response.data.state == 0) {
460
-          this.$message.error(response.data.msg);
469
+          this.$message.error(response.data.msg)
461 470
           return false
462 471
         } else {
463
-          this.patientInfo = response.data.data.order.patient;
464
-          this.hisPatientInfo = response.data.data.order.his_patient;
465
-          this.info = response.data.data.p_info;
466
-          this.order = response.data.data.order;
472
+          this.patientInfo = response.data.data.order.patient
473
+          this.hisPatientInfo = response.data.data.order.his_patient
474
+          this.info = response.data.data.p_info
475
+          this.order = response.data.data.order
467 476
 
468
-          this.prescriptions = [];
469
-          this.tableData = [];
477
+          this.prescriptions = []
478
+          this.tableData = []
470 479
 
471 480
 
472
-          var prescription = response.data.data.prescription;
473
-          this.prescriptions = prescription;
481
+          var prescription = response.data.data.prescription
482
+          this.prescriptions = prescription
474 483
           this.setMonthPrescription(prescription)
475 484
 
476 485
 
@@ -478,59 +487,59 @@ export default {
478 487
           //   var prescription = response.data.data.prescription[i]
479 488
 
480 489
 
481
-            // for (let b = 0; b < prescription.advices.length; b++) {
482
-            //   let obj = {
483
-            //     name: prescription.advices[b].advice_name,
484
-            //     statistical_classification:"",
485
-            //     type:1,
486
-            //     single_dose: prescription.advices[b].single_dose,
487
-            //     delivery_way: prescription.advices[b].delivery_way,
488
-            //     execution_frequency: prescription.advices[b].execution_frequency,
489
-            //     price: prescription.advices[b].price.toString(),
490
-            //     day: prescription.advices[b].day,
491
-            //     count:prescription.advices[b].prescribing_number.toString(),
492
-            //     remark: prescription.advices[b].remark,
493
-            //     single_dose_unit: prescription.advices[b].single_dose_unit,
494
-            //     prescribing_number_unit: prescription.advices[b].prescribing_number_unit,
495
-            //
496
-            //   }
497
-            //   this.tableData.push(obj)
498
-            // }
499
-            //
500
-            // for (let b = 0; b < prescription.project.length; b++) {
501
-            //   let obj = {
502
-            //     name: prescription.project[b].project.project_name,
503
-            //     statistical_classification: prescription.project[b].project.statistical_classification,
504
-            //     single_dose: prescription.project[b].single_dose,
505
-            //     delivery_way: prescription.project[b].delivery_way,
506
-            //     execution_frequency: prescription.project[b].execution_frequency,
507
-            //     price: prescription.project[b].price,
508
-            //     day: prescription.project[b].day,
509
-            //     count: prescription.project[b].count.toString(),
510
-            //     remark: prescription.project[b].remark,
511
-            //     single_dose_unit:prescription.project[b].project.unit,
512
-            //     prescribing_number_unit:prescription.project[b].project.unit,
513
-            //     type:2,
514
-            //   }
515
-            //   this.tableData.push(obj)
516
-            // }
517
-            //
518
-            // for (let b = 0; b < prescription.addition.length; b++) {
519
-            //     this.additions.push( prescription.addition[b])
520
-            // }
521
-
522
-
523
-
524
-            // let index = i + 1
525
-            // let obj = {
526
-            //   id: prescription.id,
527
-            //   name: '处方' + index,
528
-            //   advices: tempAdvice,
529
-            //   project: tempProject,
530
-            //   type: response.data.data.prescription[i].type
531
-            // }
532
-            // this.prescriptions.push(obj)
533
-            // this.curPrescriptions = this.prescriptions[0]
490
+          // for (let b = 0; b < prescription.advices.length; b++) {
491
+          //   let obj = {
492
+          //     name: prescription.advices[b].advice_name,
493
+          //     statistical_classification:"",
494
+          //     type:1,
495
+          //     single_dose: prescription.advices[b].single_dose,
496
+          //     delivery_way: prescription.advices[b].delivery_way,
497
+          //     execution_frequency: prescription.advices[b].execution_frequency,
498
+          //     price: prescription.advices[b].price.toString(),
499
+          //     day: prescription.advices[b].day,
500
+          //     count:prescription.advices[b].prescribing_number.toString(),
501
+          //     remark: prescription.advices[b].remark,
502
+          //     single_dose_unit: prescription.advices[b].single_dose_unit,
503
+          //     prescribing_number_unit: prescription.advices[b].prescribing_number_unit,
504
+          //
505
+          //   }
506
+          //   this.tableData.push(obj)
507
+          // }
508
+          //
509
+          // for (let b = 0; b < prescription.project.length; b++) {
510
+          //   let obj = {
511
+          //     name: prescription.project[b].project.project_name,
512
+          //     statistical_classification: prescription.project[b].project.statistical_classification,
513
+          //     single_dose: prescription.project[b].single_dose,
514
+          //     delivery_way: prescription.project[b].delivery_way,
515
+          //     execution_frequency: prescription.project[b].execution_frequency,
516
+          //     price: prescription.project[b].price,
517
+          //     day: prescription.project[b].day,
518
+          //     count: prescription.project[b].count.toString(),
519
+          //     remark: prescription.project[b].remark,
520
+          //     single_dose_unit:prescription.project[b].project.unit,
521
+          //     prescribing_number_unit:prescription.project[b].project.unit,
522
+          //     type:2,
523
+          //   }
524
+          //   this.tableData.push(obj)
525
+          // }
526
+          //
527
+          // for (let b = 0; b < prescription.addition.length; b++) {
528
+          //     this.additions.push( prescription.addition[b])
529
+          // }
530
+
531
+
532
+
533
+          // let index = i + 1
534
+          // let obj = {
535
+          //   id: prescription.id,
536
+          //   name: '处方' + index,
537
+          //   advices: tempAdvice,
538
+          //   project: tempProject,
539
+          //   type: response.data.data.prescription[i].type
540
+          // }
541
+          // this.prescriptions.push(obj)
542
+          // this.curPrescriptions = this.prescriptions[0]
534 543
 
535 544
           // }
536 545
           // this.tableData = response.data.data.order
@@ -540,6 +549,7 @@ export default {
540 549
     }
541 550
   }
542 551
 }
552
+
543 553
 </script>
544 554
 
545 555
 <style lang="scss" scoped>

+ 3 - 3
src/xt_pages/hospitalStation/treatTemplate/printOne.vue Просмотреть файл

@@ -1,7 +1,7 @@
1 1
 <template>
2 2
     <div>
3 3
         <div id='prescription-print' class="prescription-print">
4
-            <div v-if=" this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10028">
4
+            <div v-if=" this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10028 || this.$store.getters.xt_user.org_id == 10138">
5 5
                 <div class="printTitle">{{orgname}}&nbsp;&nbsp;医药费收据及收费项目清单</div>
6 6
                 <div class="infoMain">
7 7
                     <div class="infoP">医院(药店)编号:{{org_code}}</div>
@@ -346,7 +346,7 @@
346 346
     },
347 347
     created() {
348 348
 
349
-      if (this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10028) {
349
+      if (this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10028 || this.$store.getters.xt_user.org_id == 10138) {
350 350
         this.orgname = xtuser.org.org_name;
351 351
         var form = {
352 352
           'order_id': this.paramsObj.order_id,
@@ -360,7 +360,7 @@
360 360
         })
361 361
           .then(function(response) {
362 362
             if (response.data.state == 0) {
363
-              that.$message.error(response.data.msg);
363
+              // that.$message.error(response.data.msg);
364 364
               return false
365 365
             } else {
366 366
               if (response.data.data.failed_code == -10) {

+ 1 - 3
src/xt_pages/management/components/QualityForm.vue Просмотреть файл

@@ -58,9 +58,7 @@
58 58
     </el-row>
59 59
     <el-row style="display: flex;align-items: center;">
60 60
       <el-col :span="2">
61
-        <el-checkbox v-model="checkAllStatus" @change="changeCheck"
62
-          >全选</el-checkbox
63
-        >
61
+        <el-checkbox v-model="checkAllStatus" @change="changeCheck">全选</el-checkbox>
64 62
       </el-col>
65 63
       <el-col :span="3">
66 64
         <el-button size="small" @click="BatchDelete" v-show="show"

+ 7 - 2
src/xt_pages/outpatientCharges/allListPrint.vue Просмотреть файл

@@ -172,9 +172,14 @@
172 172
             let count = 0
173 173
             for (let a = 0; a < details.length; a++) {
174 174
               if (new_project_ids[i].id == details[a].project.project_id && new_project_ids[i].price == details[a].project.price) {
175
-                obj['name'] = details[a].project.project.project_name
175
+               if( details[a].project.type == 2){
176
+                 obj['name'] = details[a].project.project.project_name
177
+               }else if(details[a].project.type == 3){
178
+                 obj['name'] = details[a].project.good_info.good_name
179
+               }
180
+                obj['unit'] = details[a].project.unit
181
+
176 182
                 obj['spec'] = '1'
177
-                obj['unit'] = details[a].project.project.unit
178 183
                 obj['med_chrgitm_type'] = this.getType(details[a].med_chrgitm_type)
179 184
                 obj['price'] = parseFloat(details[a].pric)
180 185
                 obj['is_total'] = 2

+ 13 - 6
src/xt_pages/outpatientCharges/components/chargeDialog.vue Просмотреть файл

@@ -82,8 +82,8 @@
82 82
     </el-form>
83 83
 
84 84
     <span slot="footer" class="dialog-footer">
85
-    <el-button v-loading="loadingtwo" @click="cancel('formValue')">取 消</el-button>
86
-    <el-button v-loading="loadingtwo" type="primary" @click="confirm('formValue')">确 定</el-button>
85
+    <el-button @click="cancel('formValue')">取 消</el-button>
86
+    <el-button type="primary" @click="confirm('formValue')">确 定</el-button>
87 87
   </span>
88 88
   </el-dialog>
89 89
 
@@ -111,7 +111,8 @@
111 111
           found_price:'',
112 112
           total:0,
113 113
           fapiao_code:"",
114
-          fapiao_number:""
114
+          fapiao_number:"",
115
+          order:null
115 116
 
116 117
 
117 118
         },
@@ -164,8 +165,8 @@
164 165
       }
165 166
     },
166 167
     methods: {
167
-      show: function (total) {
168
-        this.total = total
168
+      show: function (total,order) {
169
+        this.form.total = total
169 170
         this.form.private_price = total
170 171
         this.form.pay_price = total
171 172
         this.form.total = total + this.form.medical_insurance_price
@@ -174,8 +175,14 @@
174 175
 
175 176
         this.form.fapiao_code =""
176 177
         this.form.fapiao_number = ""
178
+        this.order = order
177 179
 
178
-
180
+        if(this.order && this.order.id > 0){
181
+          this.form.total = this.order.medfee_sumamt
182
+          this.form.pay_price = this.order.medfee_sumamt
183
+          this.form.medical_insurance_price = this.order.fund_pay_sumamt
184
+          this.form.private_price =  this.order.psn_part_amt
185
+        }
179 186
 
180 187
         this.visibility = true
181 188
 

+ 1 - 1
src/xt_pages/outpatientCharges/components/chargeMonthPrescriptionTable.vue Просмотреть файл

@@ -61,7 +61,7 @@
61 61
         <template slot-scope="scope">{{ scope.row.project_name }}</template>
62 62
       </el-table-column>
63 63
       <el-table-column align="center" prop="statistical_classification" width="100" label="组">
64
-        <template slot-scope="scope">{{getGroup(scope.row.statistical_classification)}}</template>
64
+        <template slot-scope="scope">{{scope.row.type == 2?getGroup(scope.row.statistical_classification):"耗材"}}</template>
65 65
       </el-table-column>
66 66
       <el-table-column align="center" prop="single_dose" width="80" label="单次用量">
67 67
         <template slot-scope="scope">{{scope.row.single_dose}}{{scope.row.unit}}</template>

+ 24 - 14
src/xt_pages/outpatientCharges/components/monthPrescriptionTable.vue Просмотреть файл

@@ -44,23 +44,25 @@
44 44
 
45 45
       <el-table-column align="center" prop="day" width="50" label="天数">
46 46
         <template slot-scope="scope">
47
-          <el-input v-model="scope.row.day" placeholder="" readonly></el-input>
48
-          <div>{{'天'}}</div>
47
+          <div style="display:flex;align-items:center;">
48
+            <el-input v-model="scope.row.day" placeholder="" readonly></el-input>
49
+            <span>{{'天'}}</span>
50
+          </div>
49 51
         </template>
50 52
       </el-table-column>
51 53
 
52 54
       <el-table-column align="center" prop="prescribing_number" width="80" label="总量">
53 55
         <template slot-scope="scope">
54 56
           <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
+            <el-input v-model="scope.row.prescribing_number" style="width:60%" placeholder="" readonly></el-input>{{scope.row.prescribing_number_unit}}
57 58
           </div>
58 59
         </template>
59 60
       </el-table-column>
60
-      <el-table-column align="center" prop="retail_price" width="60" label="单价">
61
+      <el-table-column align="center" prop="retail_price" width="70" label="单价">
61 62
         <template slot-scope="scope">
62
-          <el-input v-model="scope.row.retail_price" placeholder="" readonly></el-input>
63
-          <div>{{'元'}}</div>
63
+          <div style="display:flex;align-items:center;">
64
+          <el-input v-model="scope.row.retail_price" placeholder="" readonly></el-input>{{'元'}}
65
+          </div>
64 66
         </template>
65 67
       </el-table-column>
66 68
       <el-table-column align="center" prop="remark" width="50" label="备注">
@@ -81,8 +83,10 @@
81 83
       </el-table-column>
82 84
       <el-table-column align="center" prop="single_dose" width="80" label="单次用量">
83 85
         <template slot-scope="scope">
84
-          <el-input v-model="scope.row.single_dose" placeholder="" readonly></el-input>
85
-          <div>{{scope.row.unit}}</div>
86
+          <div style="display:flex;align-items:center;">
87
+            <el-input v-model="scope.row.single_dose" placeholder="" readonly></el-input>
88
+            <div>{{scope.row.unit}}</div>
89
+          </div>
86 90
 
87 91
         </template>
88 92
       </el-table-column>
@@ -105,8 +109,10 @@
105 109
       </el-table-column>
106 110
       <el-table-column align="center" prop="number_days" width="50" label="天数">
107 111
         <template slot-scope="scope">
108
-          <el-input v-model="scope.row.number_days" placeholder="" readonly></el-input>
109
-          <div>{{'天'}}</div>
112
+          <div style="display:flex;align-items:center;">
113
+            <el-input v-model="scope.row.number_days" placeholder="" readonly></el-input>
114
+            <div>{{'天'}}</div>
115
+          </div>
110 116
         </template>
111 117
       </el-table-column>
112 118
       <el-table-column align="center" prop="total" width="70" label="总量">
@@ -117,10 +123,12 @@
117 123
           </div>
118 124
         </template>
119 125
       </el-table-column>
120
-      <el-table-column align="center" prop="name" width="50" label="单价">
126
+      <el-table-column align="center" prop="name" width="70" label="单价">
121 127
         <template slot-scope="scope">
122
-          <el-input v-model="scope.row.price" placeholder="" readonly></el-input>
123
-          <div>{{'元'}}</div>
128
+          <div style="display:flex;align-items:center;">
129
+            <el-input v-model="scope.row.price" placeholder="" readonly></el-input>
130
+            <div>{{'元'}}</div>
131
+          </div>
124 132
         </template>
125 133
       </el-table-column>
126 134
       <el-table-column align="center" prop="name" width="50" label="备注">
@@ -186,6 +194,8 @@
186 194
         }],
187 195
         value: '1',
188 196
         input: 1,
197
+        efs:[],
198
+        drugways:[]
189 199
       }
190 200
     },
191 201
     methods:{

+ 7 - 31
src/xt_pages/outpatientCharges/components/prescriptionTable.vue Просмотреть файл

@@ -61,56 +61,32 @@
61 61
         <template slot-scope="scope">{{ scope.row.project_name }}</template>
62 62
       </el-table-column>
63 63
       <el-table-column align="center" prop="statistical_classification" width="100" label="组">
64
-        <template slot-scope="scope">{{getGroup(scope.row.statistical_classification)}}</template>
64
+        <template slot-scope="scope">{{scope.row.type == 2?getGroup(scope.row.statistical_classification):"耗材"}}</template>
65 65
       </el-table-column>
66 66
       <el-table-column align="center" prop="single_dose" width="80" label="单次用量">
67 67
         <template slot-scope="scope">{{scope.row.single_dose}}{{scope.row.unit}}</template>
68 68
 
69 69
       </el-table-column>
70 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>
71
+        <template slot-scope="scope">{{scope.row.delivery_way}}</template>
76 72
       </el-table-column>
77 73
       <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>
74
+        <template slot-scope="scope">{{scope.row.execution_frequency}}</template>
83 75
       </el-table-column>
84 76
       <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>
77
+        <template slot-scope="scope">{{scope.row.number_days}}天</template>
90 78
 
91 79
       </el-table-column>
92 80
       <el-table-column align="center" prop="total" width="50" label="总量">
93 81
         <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}} {{scope.row.unit}}
97
-
98
-          </div>
82
+          <div>{{scope.row.total}} {{scope.row.unit}}</div>
99 83
         </template>
100 84
       </el-table-column>
101 85
       <el-table-column align="center" prop="name" width="50" label="单价">
102
-        <template slot-scope="scope">
103
-          <!--<el-input v-model="scope.row.price" placeholder="" readonly></el-input>-->
104
-          {{scope.row.price}}元
105
-
106
-        </template>
86
+        <template slot-scope="scope">{{scope.row.price}}元</template>
107 87
       </el-table-column>
108 88
       <el-table-column align="center" prop="name" width="50" label="备注">
109
-        <template slot-scope="scope">
110
-          <!--<el-input v-model="scope.row.remark" readonly></el-input>-->
111
-          {{scope.row.remark}}
112
-
113
-        </template>
89
+        <template slot-scope="scope">{{scope.row.remark}}</template>
114 90
       </el-table-column>
115 91
     </el-table>
116 92
 

+ 327 - 328
src/xt_pages/outpatientCharges/components/registerDialog.vue Просмотреть файл

@@ -1,192 +1,192 @@
1 1
 <template>
2
-  <el-dialog width="854px" class="registerDialog" :title="titles" :visible.sync="visibility"
3
-             :close-on-click-modal="isClose"
4
-             :close-on-press-escape="isClose">
5
-
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>
23
-      </el-form-item>
24
-
25
-      <el-form-item label="性别:" prop="gender" :validate-event="is_Name">
26
-        <el-select v-model="form.gender" placeholder="请选择" style="width:100%;">
27
-          <el-option
28
-            v-for="item in sex"
29
-            :key="item.value"
30
-            :label="item.label"
31
-            :value="item.value">
32
-          </el-option>
33
-        </el-select>
34
-
35
-
36
-      </el-form-item>
37
-
38
-      <el-form-item label="年龄:" prop="age" :validate-event="is_Name">
39
-        <el-input v-model="form.age"></el-input>
40
-      </el-form-item>
41
-
42
-
43
-      <el-form-item label="出生日期:" prop="birthday" :validate-event="is_Name">
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>
46
-      </el-form-item>
47
-
48
-      <el-form-item label="手机号码:" prop="phone">
49
-        <el-input v-model="form.phone"></el-input>
50
-      </el-form-item>
51
-
52
-
53
-      <el-form-item label="医疗类别:">
54
-        <el-select v-model="form.medical_care" placeholder="请选择" style="width:100%;">
55
-          <el-option
56
-            v-for="(item,index) in medical_care"
57
-            :key="index"
58
-            :label="item.label"
59
-            :value="item.value">
60
-          </el-option>
61
-        </el-select>
62
-      </el-form-item>
63
-
64
-
65
-      <el-form-item label="证件类型:" prop="certificates" :validate-event="is_Name">
66
-        <el-select v-model="form.certificates" placeholder="请选择" style="width:100%;">
67
-          <el-option
68
-            v-for="item in certificates"
69
-            :key="item.value"
70
-            :label="item.label"
71
-            :value="item.value">
72
-          </el-option>
73
-        </el-select>
74
-      </el-form-item>
75
-
76
-      <el-form-item label="证件号码:" prop="id_card" :validate-event="is_Name">
77
-        <el-input v-model="form.id_card"></el-input>
78
-      </el-form-item>
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
-
113
-
114
-      <el-form-item label="结算类型:">
115
-        <el-select v-model="form.settlement_value" placeholder="请选择" style="width:100%;">
116
-          <el-option
117
-            v-for="item in settlement"
118
-            :key="item.value"
119
-            :label="item.label"
120
-            :value="item.value">
121
-          </el-option>
122
-        </el-select>
123
-      </el-form-item>
124
-
125
-
126
-      <el-form-item label="社保类型:">
127
-        <el-select v-model="form.social_type" placeholder="请选择" style="width:100%;">
128
-          <el-option
129
-            v-for="item in medicalCare"
130
-            :key="item.value"
131
-            :label="item.label"
132
-            :value="item.value">
133
-          </el-option>
134
-        </el-select>
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
-
150
-      <el-form-item class="specialFormItem" label="医保卡号:">
151
-        <div style="display:flex;">
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
-
155
-        </div>
156
-      </el-form-item>
157
-
158
-      <el-form-item label="挂号类型:"  >
159
-        <el-select v-model="form.register" placeholder="请选择" style="width:100%;">
160
-          <el-option
161
-            v-for="item in register"
162
-            :key="item.value"
163
-            :label="item.label"
164
-            :value="item.value">
165
-          </el-option>
166
-        </el-select>
167
-      </el-form-item>
168
-      <el-form-item label="挂号费:">
169
-        <el-input v-model="form.registration_fee"></el-input>
170
-      </el-form-item>
171
-      <el-form-item label="诊疗费:">
172
-        <el-input v-model="form.medical_expenses"></el-input>
173
-      </el-form-item>
174
-    </el-form>
175
-
176
-    <span slot="footer" class="dialog-footer">
2
+    <el-dialog width="854px" class="registerDialog" :title="titles" :visible.sync="visibility"
3
+               :close-on-click-modal="isClose"
4
+               :close-on-press-escape="isClose">
5
+
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>
23
+            </el-form-item>
24
+
25
+            <el-form-item label="性别:" prop="gender" :validate-event="is_Name">
26
+                <el-select v-model="form.gender" placeholder="请选择" style="width:100%;">
27
+                    <el-option
28
+                            v-for="item in sex"
29
+                            :key="item.value"
30
+                            :label="item.label"
31
+                            :value="item.value">
32
+                    </el-option>
33
+                </el-select>
34
+
35
+
36
+            </el-form-item>
37
+
38
+            <el-form-item label="年龄:" prop="age" :validate-event="is_Name">
39
+                <el-input v-model="form.age"></el-input>
40
+            </el-form-item>
41
+
42
+
43
+            <el-form-item label="出生日期:" prop="birthday" :validate-event="is_Name">
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>
46
+            </el-form-item>
47
+
48
+            <el-form-item label="手机号码:" prop="phone">
49
+                <el-input v-model="form.phone"></el-input>
50
+            </el-form-item>
51
+
52
+
53
+            <!--<el-form-item label="医疗类别:">-->
54
+                <!--<el-select v-model="form.medical_care" placeholder="请选择" style="width:100%;">-->
55
+                    <!--<el-option-->
56
+                            <!--v-for="(item,index) in medical_care"-->
57
+                            <!--:key="index"-->
58
+                            <!--:label="item.label"-->
59
+                            <!--:value="item.value">-->
60
+                    <!--</el-option>-->
61
+                <!--</el-select>-->
62
+            <!--</el-form-item>-->
63
+
64
+
65
+            <el-form-item label="证件类型:" prop="certificates" :validate-event="is_Name">
66
+                <el-select v-model="form.certificates" placeholder="请选择" style="width:100%;">
67
+                    <el-option
68
+                            v-for="item in certificates"
69
+                            :key="item.value"
70
+                            :label="item.label"
71
+                            :value="item.value">
72
+                    </el-option>
73
+                </el-select>
74
+            </el-form-item>
75
+
76
+            <el-form-item label="证件号码:" prop="id_card" :validate-event="is_Name">
77
+                <el-input v-model="form.id_card"></el-input>
78
+            </el-form-item>
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
+                <!--&gt;-->
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
+
113
+
114
+            <el-form-item label="结算类型:">
115
+                <el-select v-model="form.settlement_value" placeholder="请选择" style="width:100%;">
116
+                    <el-option
117
+                            v-for="item in settlement"
118
+                            :key="item.value"
119
+                            :label="item.label"
120
+                            :value="item.value">
121
+                    </el-option>
122
+                </el-select>
123
+            </el-form-item>
124
+
125
+
126
+            <el-form-item label="社保类型:">
127
+                <el-select v-model="form.social_type" placeholder="请选择" style="width:100%;">
128
+                    <el-option
129
+                            v-for="item in medicalCare"
130
+                            :key="item.value"
131
+                            :label="item.label"
132
+                            :value="item.value">
133
+                    </el-option>
134
+                </el-select>
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
+
150
+            <el-form-item class="specialFormItem" label="医保卡号:">
151
+                <div style="display:flex;">
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
+
155
+                </div>
156
+            </el-form-item>
157
+
158
+            <el-form-item label="挂号类型:" :validate-event="is_Name">
159
+                <el-select v-model="form.register" placeholder="请选择" style="width:100%;">
160
+                    <el-option
161
+                            v-for="item in register"
162
+                            :key="item.value"
163
+                            :label="item.label"
164
+                            :value="item.value">
165
+                    </el-option>
166
+                </el-select>
167
+            </el-form-item>
168
+            <el-form-item label="挂号费:">
169
+                <el-input v-model="form.registration_fee"></el-input>
170
+            </el-form-item>
171
+            <el-form-item label="诊疗费:">
172
+                <el-input v-model="form.medical_expenses"></el-input>
173
+            </el-form-item>
174
+        </el-form>
175
+
176
+        <span slot="footer" class="dialog-footer">
177 177
     <el-button @click="cancel('formValue')">取 消</el-button>
178 178
     <el-button type="primary" @click="confirm('formValue')">挂 号</el-button>
179 179
   </span>
180
-  </el-dialog>
180
+    </el-dialog>
181 181
 
182 182
 </template>
183 183
 
184 184
 <script>
185
-  import {jsGetAge, uParseTime} from "@/utils/tools";
185
+  import { jsGetAge, uParseTime } from '@/utils/tools'
186 186
   import axios from 'axios'
187
-  import {PostSearch} from '@/api/patient'
187
+  import { PostSearch } from '@/api/patient'
188 188
 
189
-  import {getDictionaryDataConfig} from '@/utils/data'
189
+  import { getDictionaryDataConfig } from '@/utils/data'
190 190
 
191 191
   export default {
192 192
 
@@ -196,31 +196,30 @@
196 196
 
197 197
       return {
198 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: "普通住院"},
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 206
         ],
207 207
         medical_care: [
208
-          {value: 11, label: "普通门诊"},
209
-          {value: 12, label: '家庭通道'},
210
-          {value: 13, label: "门诊大病"},
211
-          {value: 14, label: "重疾特药"},
212
-          {value: 15, label: "门诊慢病"},
213
-          {value: 16, label: "门诊特检"},
214
-          {value: 17, label: "健康体检"},
215
-          {value: 18, label: "预防接种"},
216
-          {value: 19, label: "门诊输血"},
217
-          {value: 91, label: "新冠肺炎门诊"},
208
+          { value: 11, label: '普通门诊' },
209
+          { value: 12, label: '家庭通道' },
210
+          { value: 13, label: '门诊大病' },
211
+          { value: 14, label: '重疾特药' },
212
+          { value: 15, label: '门诊慢病' },
213
+          { value: 16, label: '门诊特检' },
214
+          { value: 17, label: '健康体检' },
215
+          { value: 18, label: '预防接种' },
216
+          { value: 19, label: '门诊输血' },
217
+          { value: 91, label: '新冠肺炎门诊' }
218 218
         ],
219 219
 
220
-
221 220
         form: {
222 221
           id: '',
223
-          settlement_value: '',
222
+          settlement_value: 1,
224 223
           medical_insurance_card: '',
225 224
           name: '',
226 225
           gender: '',
@@ -236,29 +235,31 @@
236 235
           doctor: '',
237 236
           id_card_type: 1,
238 237
           department: '',
239
-          registration_fee: 0,
240
-          medical_expenses: 0,
238
+          registration_fee: '',
239
+          medical_expenses: '',
241 240
           cost: '',
242 241
           phone: '',
243
-          social_type: '',
242
+          social_type: ''
244 243
         }, IDCardTypes: [{
245 244
           value: 1,
246 245
           label: '社保卡'
247 246
         }, {
248 247
           value: 2,
249
-          label: "身份证"
248
+          label: '身份证'
250 249
         }, {
251 250
           value: 3,
252
-          label: "电子凭证"
253
-        },],
251
+          label: '电子凭证'
252
+        }],
254 253
         settlement: [
255
-          {value: 1, label: '医保'},
256
-          {value: 2, label: '自费'},
257
-          {value: 3, label: '公费'},
258
-          {value: 4, label: '农保'},
259
-          {value: 5, label: '会员'},
260
-          {value: 6, label: '职工'},
261
-          {value: 7, label: '合同'}
254
+          { value: 1, label: '医保' },
255
+          { value: 2, label: '自费' },
256
+          { value: 3, label: '公费' },
257
+          { value: 4, label: '农保' },
258
+          { value: 5, label: '会员' },
259
+          { value: 6, label: '职工' },
260
+          { value: 7, label: '合同' },
261
+          {value: 8, label: '医保自费'},
262
+
262 263
         ],
263 264
         sex: [{
264 265
           value: 1,
@@ -272,72 +273,71 @@
272 273
           label: '内地身份证'
273 274
         }, {
274 275
           value: 2,
275
-          label: "社保卡"
276
+          label: '社保卡'
276 277
         }, {
277 278
           value: 3,
278
-          label: "护照"
279
+          label: '护照'
279 280
         }, {
280 281
           value: 4,
281
-          label: "军官证"
282
+          label: '军官证'
282 283
         }, {
283 284
           value: 5,
284
-          label: "台胞证"
285
+          label: '台胞证'
285 286
         }, {
286 287
           value: 6,
287
-          label: "港澳地区身份证"
288
+          label: '港澳地区身份证'
288 289
         }],
289 290
         medicalCare: [{
290 291
           value: 1,
291 292
           label: '职工基本医疗保险'
292 293
         }, {
293 294
           value: 2,
294
-          label: "公务员医疗补助"
295
+          label: '公务员医疗补助'
295 296
         }, {
296 297
           value: 3,
297
-          label: "大额医疗费用补助"
298
+          label: '大额医疗费用补助'
298 299
         }, {
299 300
           value: 4,
300
-          label: "离休人员医疗"
301
+          label: '离休人员医疗'
301 302
         }, {
302 303
           value: 5,
303
-          label: "城乡居民基本医疗保险"
304
+          label: '城乡居民基本医疗保险'
304 305
         }, {
305 306
           value: 6,
306
-          label: "城乡居民大病医疗保险"
307
+          label: '城乡居民大病医疗保险'
307 308
         }, {
308 309
           value: 7,
309
-          label: "生育保险"
310
+          label: '生育保险'
310 311
         }],
311 312
         register: [{
312 313
           value: 1,
313 314
           label: '普通'
314 315
         }, {
315 316
           value: 2,
316
-          label: "主治"
317
+          label: '主治'
317 318
         }, {
318 319
           value: 3,
319
-          label: "主任"
320
+          label: '主任'
320 321
         }, {
321 322
           value: 4,
322
-          label: "免收诊金"
323
+          label: '免收诊金'
323 324
         }, {
324 325
           value: 5,
325
-          label: "专家"
326
+          label: '专家'
326 327
         }],
327 328
         rules: {
328
-          name: [{required: true, message: "患者姓名不能为空", trigger: 'blur'}],
329
-          gender: [{required: true, message: "患者性别不能为空", trigger: 'blur'}],
330
-          id_card: [{required: true, message: '证件号码不能为空', trigger: 'blur'}],
331
-          register: [{required: true, message: '请选择挂号类型', trigger: 'blur'}],
332
-          doctor: [{required: true, message: '请选择医生', trigger: 'blur'}],
333
-          department: [{required: true, message: '请填写科室', trigger: 'blur'}],
334
-          age: [{required: true, message: "患者年龄不能为空", trigger: 'blur'}],
335
-          birthday: [{required: true, message: "患者出生日期不能为空", trigger: 'blur'}],
336
-          certificates: [{required: true, message: "证件类型不能为空", trigger: 'change'}],
337
-          id_card_type: [{required: true, message: "读卡类型不能为空", trigger: 'change'}],
338
-          p_type: [{required: true, message: "处方类型不能为空", trigger: 'change'}],
339
-          sick_type: [{required: true, message: "大病类别不能为空", trigger: 'change'}],
340
-          diagnosis: [{required: true, message: "诊断不能为空", trigger: 'change'}],
329
+          name: [{ required: true, message: '患者姓名不能为空', trigger: 'blur' }],
330
+          gender: [{ required: true, message: '患者性别不能为空', trigger: 'blur' }],
331
+          id_card: [{ required: true, message: '证件号码不能为空', trigger: 'blur' }],
332
+          doctor: [{ required: true, message: '请选择医生', trigger: 'blur' }],
333
+          department: [{ required: true, message: '请填写科室', trigger: 'blur' }],
334
+          age: [{ required: true, message: '患者年龄不能为空', trigger: 'blur' }],
335
+          birthday: [{ required: true, message: '患者出生日期不能为空', trigger: 'blur' }],
336
+          certificates: [{ required: true, message: '证件类型不能为空', trigger: 'change' }],
337
+          id_card_type: [{ required: true, message: '读卡类型不能为空', trigger: 'change' }],
338
+          p_type: [{ required: true, message: '处方类型不能为空', trigger: 'change' }],
339
+          // sick_type: [{ required: true, message: '大病类别不能为空', trigger: 'change' }],
340
+          // diagnosis: [{ required: true, message: '诊断不能为空', trigger: 'change' }]
341 341
         },
342 342
         visibility: false,
343 343
         labelPosition: 'right',
@@ -360,8 +360,8 @@
360 360
           medical_expenses: '',
361 361
           cost: '',
362 362
           phone: '',
363
-          social_type: '',
364
-        },
363
+          social_type: ''
364
+        }
365 365
 
366 366
       }
367 367
     },
@@ -385,125 +385,124 @@
385 385
 
386 386
       },
387 387
       sick: Array,
388
-      diagnoses: Array,
388
+      diagnoses: Array
389 389
     },
390 390
     methods: {
391 391
       handleSelect(val) {
392
-        this.form.id = val.id;
393
-        this.form.name = val.name;
394
-        this.form.gender = val.gender;
395
-        this.form.birthday = uParseTime(val.birthday, '{y}-{m}-{d}');
396
-        this.form.phone = val.phone;
397
-        this.form.id_card = val.id_card_no;
398
-        var thisLen = this.form.id_card.length;
399
-        var birth = "";
392
+        this.form.id = val.id
393
+        this.form.name = val.name
394
+        this.form.gender = val.gender
395
+        this.form.birthday = uParseTime(val.birthday, '{y}-{m}-{d}')
396
+        this.form.phone = val.phone
397
+        this.form.id_card = val.id_card_no
398
+        var thisLen = this.form.id_card.length
399
+        var birth = ''
400 400
         if (thisLen == 15) {
401
-          birth = "19" + this.form.id_card.substr(6, 6);
401
+          birth = '19' + this.form.id_card.substr(6, 6)
402 402
         } else {
403
-          birth = this.form.id_card.substr(6, 8);
403
+          birth = this.form.id_card.substr(6, 8)
404 404
         }
405 405
         var births =
406 406
           birth.substr(0, 4) +
407
-          "-" +
407
+          '-' +
408 408
           birth.substr(4, 2) +
409
-          "-" +
410
-          birth.substr(6, 2);
411
-        this.form.age = jsGetAge(births, "-");
409
+          '-' +
410
+          birth.substr(6, 2)
411
+        this.form.age = jsGetAge(births, '-')
412 412
       },
413 413
       querySearchAsync(keyword, cb) {
414
-        let key = '';
414
+        let key = ''
415 415
         if (keyword != undefined) {
416 416
           key = keyword
417 417
         }
418
-        let searchArray = [];
418
+        let searchArray = []
419 419
         PostSearch(key).then(response => {
420 420
           if (response.data.state == 1) {
421
-            searchArray = response.data.data.patient;
421
+            searchArray = response.data.data.patient
422 422
             cb(searchArray)
423 423
           } else {
424 424
             cb([])
425 425
           }
426 426
         })
427 427
       },
428
-      reading(medicalInsuranceCard) {
429
-        var that = this;
428
+      reading() {
429
+        var that = this
430 430
         if (this.form.id_card_type.length == 0 || this.form.id_card_type == 0) {
431
-          this.$message.error("请先选择读卡类型");
431
+          this.$message.error('请先选择读卡类型')
432 432
           return
433 433
         }
434 434
         let params = {
435 435
           'id_card_type': this.form.id_card_type,
436 436
           'admin_user_id': this.$store.getters.xt_user.user.id,
437
-
438
-        };
439
-        axios.get('http://127.0.0.1:9532/api/sscard', {
437
+          'certificates':this.form.certificates,
438
+        }
439
+        axios.get('http://127.0.0.1:9532/api/readcard', {
440 440
           params: params
441 441
         })
442
-          .then(function (response) {
442
+          .then(function(response) {
443 443
             if (response.data.state == 0) {
444
-              that.$message.error(response.data.msg);
444
+              that.$message.error(response.data.msg)
445 445
               return false
446 446
             } else {
447
-              var patient = response.data.data.patient;
447
+              var patient = response.data.data.patient
448 448
 
449 449
               if (that.form.id_card_type == 1) {
450
-                this.form.id = patient.id;
451
-                that.form.name = patient.name;
452
-                that.form.sex = patient.gender;
453
-                that.form.age = patient.age;
454
-                that.form.birthday = uParseTime(patient.birthday, '{y}-{m}-{d}');
455
-                that.form.phone = patient.phone;
456
-                that.form.idCard = patient.id_card_no;
450
+                this.form.id = patient.id
451
+                that.form.name = patient.name
452
+                that.form.sex = patient.gender
453
+                that.form.age = patient.age
454
+                that.form.birthday = uParseTime(patient.birthday, '{y}-{m}-{d}')
455
+                that.form.phone = patient.phone
456
+                that.form.idCard = patient.id_card_no
457 457
                 that.form.medicalInsuranceCard = response.data.data.number
458 458
 
459 459
               } else if (that.form.id_card_type == 2) {
460
-                this.form.id = patient.id;
461
-                that.form.name = patient.name;
462
-                that.form.sex = patient.gender;
463
-                that.form.age = patient.age;
464
-                that.form.birthday = uParseTime(patient.birthday, '{y}-{m}-{d}');
465
-                that.form.phone = patient.phone;
460
+                this.form.id = patient.id
461
+                that.form.name = patient.name
462
+                that.form.sex = patient.gender
463
+                that.form.age = patient.age
464
+                that.form.birthday = uParseTime(patient.birthday, '{y}-{m}-{d}')
465
+                that.form.phone = patient.phone
466 466
                 that.form.idCard = patient.id_card_no
467 467
               }
468
-              that.$message({message: '读卡成功', type: 'success'})
468
+              that.$message({ message: '读卡成功', type: 'success' })
469 469
             }
470 470
           })
471
-          .catch(function (error) {
472
-
473
-          });
471
+          .catch(function(error) {
474 472
 
473
+          })
475 474
 
476 475
       },
477 476
       getDictionaryDataConfig(module, filed_name) {
478 477
         return getDictionaryDataConfig(module, filed_name)
479 478
       },
480
-      show: function () {
481
-        this.visibility = true;
479
+      show: function() {
480
+        this.visibility = true
482 481
         // this.form = Object.assign({}, this.resetForm)
483
-        this.form.id = 0;
484
-        this.form.settlement_value = '';
485
-        this.form.medical_insurance_card = '';
486
-        this.form.name = '';
487
-        this.form.gender = '';
488
-        this.form.medical_care = '';
489
-        this.form.birthda = '';
490
-        this.form.age = '';
491
-        this.form.id_card = '';
492
-        this.form.register = '';
493
-        this.form.doctor = '';
494
-        this.form.department = '';
495
-        this.form.registration_fee = 0;
496
-        this.form.medical_expenses = 0;
497
-        this.form.cost = '';
498
-        this.form.phone = '';
499
-        this.form.social_type = '';
500
-
501
-        this.form.p_type = 14;
502
-        this.form.sick_type = this.sick[0].id;
503
-        this.form.diagnosis = this.diagnoses[0].id;
504
-        this.form.id_card_type = 2;
505
-        this.form.certificates = 1;
482
+        this.form.id = 0
506 483
         this.form.settlement_value = 1
484
+        this.form.medical_insurance_card = ''
485
+        this.form.name = ''
486
+        this.form.gender = ''
487
+        this.form.medical_care = ''
488
+        this.form.birthda = ''
489
+        this.form.age = ''
490
+        this.form.id_card = ''
491
+        this.form.register = ''
492
+        this.form.doctor = ''
493
+        this.form.department = ''
494
+        this.form.registration_fee = ''
495
+        this.form.medical_expenses = ''
496
+        this.form.cost = ''
497
+        this.form.phone = ''
498
+        this.form.social_type = ''
499
+
500
+        this.form.p_type = 14
501
+        this.form.sick_type = this.sick[0].id
502
+        this.form.diagnosis = this.diagnoses[0].id
503
+        this.form.id_card_type = 2
504
+        this.form.certificates = 1
505
+
507 506
         // this.form.name = patientInfo.name
508 507
         // this.form.gender = patientInfo.gender
509 508
         // this.form.age = patientInfo.age
@@ -519,24 +518,24 @@
519 518
       },
520 519
 
521 520
       hide: function () {
522
-        this.visibility = false;
521
+        this.visibility = false
523 522
         this.$refs['formValue'].resetFields()
524
-      }, cancel: function (formName) {
525
-        this.$emit('cancel', this.getValue());
523
+      }, cancel: function(formName) {
524
+        this.$emit('cancel', this.getValue())
526 525
         this.$refs['formValue'].resetFields()
527 526
       },
528
-      confirm: function (formName) {
527
+      confirm: function(formName) {
529 528
         this.$refs['formValue'].validate((valid) => {
530 529
           if (valid) {
531
-            let value = {};
532
-            value = this.getValue();
530
+            let value = {}
531
+            value = this.getValue()
533 532
             this.$emit('confirm', value)
534 533
           }
535 534
         })
536 535
       },
537
-      getValue: function () {
538
-        let form = {};
539
-        form = this.form;
536
+      getValue: function() {
537
+        let form = {}
538
+        form = this.form
540 539
         return form
541 540
       }
542 541
     }
@@ -545,16 +544,16 @@
545 544
 </script>
546 545
 
547 546
 <style lang="scss" scoped>
548
-  .registerDialog {
547
+    .registerDialog {
549 548
 
550
-  .el-form {
551
-    display: flex;
552
-    flex-wrap: wrap;
553
-  }
549
+    .el-form {
550
+        display: flex;
551
+        flex-wrap: wrap;
552
+    }
554 553
 
555
-  .el-form-item {
556
-    width: 50%;
557
-  }
554
+    .el-form-item {
555
+        width: 50%;
556
+    }
558 557
 
559
-  }
558
+    }
560 559
 </style>

+ 62 - 22
src/xt_pages/outpatientCharges/components/registerDialog9504.vue Просмотреть файл

@@ -35,9 +35,9 @@
35 35
 
36 36
             </el-form-item>
37 37
 
38
-            <el-form-item label="年龄:" prop="age" >
38
+            <!-- <el-form-item label="年龄:" prop="age" >
39 39
                 <el-input v-model="form.age"></el-input>
40
-            </el-form-item>
40
+            </el-form-item> -->
41 41
 
42 42
 
43 43
             <el-form-item label="出生日期:" prop="birthday" >
@@ -50,16 +50,16 @@
50 50
             </el-form-item>
51 51
 
52 52
 
53
-            <el-form-item label="医疗类别:" prop="medical_care">
54
-                <el-select v-model="form.medical_care"  placeholder="请选择" style="width:100%;">
55
-                    <el-option
56
-                            v-for="(item,index) in medical_care"
57
-                            :key="index"
58
-                            :label="item.label"
59
-                            :value="item.value">
60
-                    </el-option>
61
-                </el-select>
62
-            </el-form-item>
53
+            <!--<el-form-item label="医疗类别:" prop="medical_care">-->
54
+                <!--<el-select v-model="form.medical_care"  placeholder="请选择" style="width:100%;">-->
55
+                    <!--<el-option-->
56
+                            <!--v-for="(item,index) in medical_care"-->
57
+                            <!--:key="index"-->
58
+                            <!--:label="item.label"-->
59
+                            <!--:value="item.value">-->
60
+                    <!--</el-option>-->
61
+                <!--</el-select>-->
62
+            <!--</el-form-item>-->
63 63
 
64 64
 
65 65
             <el-form-item label="证件类型:" prop="certificates" >
@@ -173,10 +173,11 @@
173 173
 </template>
174 174
 
175 175
 <script>
176
-  import {uParseTime} from "@/utils/tools";
176
+  import {uParseTime,jsGetAge} from "@/utils/tools";
177 177
   import axios from 'axios'
178 178
   import {PostSearch} from '@/api/patient'
179 179
   import {getDictionaryDataConfig} from '@/utils/data'
180
+
180 181
   export default {
181 182
     name: 'registerDialog9504',
182 183
 
@@ -186,12 +187,12 @@
186 187
         read_loading:false,
187 188
         registers: [
188 189
           {value: 11, label: "普通门诊"},
189
-          {value: 12, label: '门诊挂号'},
190
-          {value: 13, label: "急诊"},
190
+          // {value: 12, label: '门诊挂号'},
191
+          // {value: 13, label: "急诊"},
191 192
           {value: 14, label: "门诊特殊病"},
192
-          {value: 15, label: "门诊统筹"},
193
-          {value: 16, label: "门诊慢性病"},
194
-          {value: 21, label: "普通住院"},
193
+          // {value: 15, label: "门诊统筹"},
194
+          // {value: 16, label: "门诊慢性病"},
195
+          // {value: 21, label: "普通住院"},
195 196
         ],
196 197
         medical_care:[
197 198
           {value: 11, label: "普通门诊"},
@@ -241,7 +242,9 @@
241 242
           {value: 4, label: '农保'},
242 243
           {value: 5, label: '会员'},
243 244
           {value: 6, label: '职工'},
244
-          {value: 7, label: '合同'}
245
+          {value: 7, label: '合同'},
246
+          {value: 8, label: '医保自费'},
247
+
245 248
         ],
246 249
         sex: [{
247 250
           value: 1,
@@ -314,11 +317,10 @@
314 317
           register: [{required: true, message: '请选择挂号类型', trigger: 'blur'}],
315 318
           doctor: [{required: true, message: '请选择医生', trigger: 'blur'}],
316 319
           department: [{required: true, message: '请填写科室', trigger: 'blur'}],
317
-          age: [{required: true, message: "患者年龄不能为空", trigger: 'blur'}],
318 320
           birthday: [{required: true, message: "患者出生日期不能为空", trigger: 'blur'}],
319 321
           certificates: [{required: true, message: "证件类型不能为空", trigger: 'change'}],
320 322
           id_card_type: [{required: true, message: "读卡类型不能为空", trigger: 'change'}],
321
-          medical_care: [{required: true, message: "医疗类别不能为空", trigger: 'change'}],
323
+          // medical_care: [{required: true, message: "医疗类别不能为空", trigger: 'change'}],
322 324
 
323 325
         },
324 326
         visibility: false,
@@ -433,7 +435,7 @@
433 435
 
434 436
         }
435 437
         this.read_loading = true
436
-        axios.get('http://127.0.0.1:9532/sz/api/readcard', {
438
+        axios.get('http://127.0.0.1:9532/api/readcard', {
437 439
           params: params
438 440
         })
439 441
           .then(function (response) {
@@ -454,6 +456,23 @@
454 456
                 that.form.phone = patient.phone
455 457
                 that.form.id_card = patient.id_card_no
456 458
                 that.form.medical_insurance_card = response.data.data.health_card_no
459
+
460
+                var thisLen = that.form.id_card.length
461
+                var birth = ''
462
+                if (thisLen == 15) {
463
+                  birth = '19' + that.form.id_card.substr(6, 6)
464
+                } else {
465
+                  birth = that.form.id_card.substr(6, 8)
466
+                }
467
+                var births =
468
+                  birth.substr(0, 4) +
469
+                  '-' +
470
+                  birth.substr(4, 2) +
471
+                  '-' +
472
+                  birth.substr(6, 2)
473
+                that.form.age = jsGetAge(births, '-')
474
+
475
+
457 476
               } else if (that.form.id_card_type == 2) {
458 477
                 this.form.id = patient.id
459 478
                 that.form.name = patient.name
@@ -462,6 +481,21 @@
462 481
                 that.form.birthday = uParseTime(patient.birthday, '{y}-{m}-{d}')
463 482
                 that.form.phone = patient.phone
464 483
                 that.form.id_card = patient.id_card_no
484
+
485
+                var thisLen = that.form.id_card.length
486
+                var birth = ''
487
+                if (thisLen == 15) {
488
+                  birth = '19' + that.form.id_card.substr(6, 6)
489
+                } else {
490
+                  birth = that.form.id_card.substr(6, 8)
491
+                }
492
+                var births =
493
+                  birth.substr(0, 4) +
494
+                  '-' +
495
+                  birth.substr(4, 2) +
496
+                  '-' +
497
+                  birth.substr(6, 2)
498
+                that.form.age = jsGetAge(births, '-')
465 499
               }
466 500
               that.$message({message: '读卡成功', type: 'success'})
467 501
 
@@ -488,6 +522,12 @@
488 522
         // this.form.social_type = patientInfo.health_care_type
489 523
         this.form.id_card_type = 1
490 524
         this.form.certificates = 1
525
+        this.form.medical_care = 11
526
+        this.form.settlement_value = 1
527
+        this.form.register = 4
528
+        this.form.registration_fee = 0
529
+        this.form.medical_expenses = 0
530
+
491 531
 
492 532
         // if( this.form.social_type == 0){
493 533
         //   this.form.social_type = ""

+ 190 - 39
src/xt_pages/outpatientCharges/costComparison.vue Просмотреть файл

@@ -158,7 +158,7 @@
158 158
                 <el-form :model="form" label-width="100px">
159 159
                     <el-form-item label="时间" label-width="100px">
160 160
                         <el-date-picker v-model="start_time" prefix-icon="el-icon-date"
161
-                                        @change="handleStartTimeChange" :editable="false" :clearable="false"
161
+                                        :editable="false" :clearable="false"
162 162
                                         style="width: 200px;" type="date" placeholder="选择开始日期"
163 163
                                         format="yyyy-MM-dd"
164 164
                                         value-format="yyyy-MM-dd"
@@ -166,7 +166,7 @@
166 166
                         -
167 167
 
168 168
                         <el-date-picker v-model="end_time" prefix-icon="el-icon-date"
169
-                                        @change="handleEndTimeChange" :editable="false" :clearable="false"
169
+                                       :editable="false" :clearable="false"
170 170
                                         style="width: 200px;margin-right:10px;" type="date" placeholder="选择结束日期"
171 171
                                         format="yyyy-MM-dd"
172 172
                                         value-format="yyyy-MM-dd"
@@ -212,7 +212,8 @@
212 212
     getDoctorList,
213 213
     getExportConsumeDetailList,
214 214
     getHisOrderList,
215
-    getList
215
+    getList,
216
+    getInitData
216 217
   } from '@/api/his/his'
217 218
   import { uParseTime } from '@/utils/tools'
218 219
   import { fetchAllAdminUsers } from '@/api/doctor'
@@ -230,6 +231,7 @@
230 231
           { path: false, name: '医保费用对照' }
231 232
         ],
232 233
         tableData: [],
234
+        diagnoses:[],
233 235
         limit: 10,
234 236
         page: 1,
235 237
         dialogFormVisible: false,
@@ -458,7 +460,7 @@
458 460
                   that.$alert(result_desc, '对账结果', {
459 461
                     confirmButtonText: '确定',
460 462
                     callback: action => {
461
-                      this.dialogFormVisible = false
463
+                      that.dialogFormVisible = false
462 464
                     }
463 465
                   })
464 466
 
@@ -572,53 +574,202 @@
572 574
             return false
573 575
           } else {
574 576
             this.fromData = response.data.data.list
575
-            var list = []
576
-
577
-            for (let i = 0; i < this.fromData.length; i++) {
578
-              let obj = {
579
-                '结算金额': this.fromData[i].medfee_sumamt,
580
-                '姓名': this.fromData[i].psn_name,
581
-                '身份证': this.fromData[i].id_card_no,
582
-                '个人编号': this.fromData[i].psn_no,
583
-                '门诊流水号': this.fromData[i].mdtrt_id,
584
-                '挂号日期': this.getTimes(this.fromData[i].settle_accounts_date),
585
-                '起付线': this.fromData[i].act_pay_dedc,
586
-                '统筹基金': this.fromData[i].fund_pay_sumamt,
587
-                '个人支付': this.fromData[i].psn_cash_pay,
588
-                '个账支付': this.fromData[i].acct_pay,
589
-                '现金支付': this.fromData[i].cash_pay,
590
-                '总费用': this.fromData[i].sumamt,
591
-                '冲销标志': '已结算'
577
+
578
+            if(this.selection[0].insutype == "310"){
579
+
580
+              var list = []
581
+              for (let i = 0; i < this.fromData.length; i++) {
582
+                // var hifmi_pay = 0.00;
583
+                //
584
+                // if(this.fromData[i].setl_detail.length > 0){
585
+                //   var jsonObj = JSON.parse(this.fromData[i].setl_detail);
586
+                //   for (let i = 0; i < jsonObj.length; i++) {
587
+                //     if (order.fund_pay_type == '310300') {
588
+                //       hifmi_pay = jsonObj[i].fund_payamt
589
+                //     }
590
+                //   }
591
+                // }
592
+
593
+                var hifes_pays = [];
594
+
595
+                if(this.fromData[i].setl_detail.length > 0){
596
+                  var jsonObj = JSON.parse(this.fromData[i].setl_detail);
597
+                  console.log(jsonObj)
598
+                  for (let i = 0; i < jsonObj.length; i++) {
599
+                    if (jsonObj[i].fund_pay_type == '310100') {
600
+                      hifes_pays.push(jsonObj[i].fund_payamt)
601
+                    }
602
+                  }
603
+                }
604
+
605
+                let hifes_pay = 0.00
606
+                if(hifes_pays.length == 2){
607
+                  hifes_pay = hifes_pays[1]
608
+                }
609
+
610
+                let obj = {
611
+                  '序号': i+1,
612
+                  '姓名': this.fromData[i].psn_name,
613
+                  '单位名称': this.fromData[i].psn_name,
614
+                  '个人编号': this.fromData[i].psn_no,
615
+                  '门诊号': this.fromData[i].mdtrt_id,
616
+                  '挂号日期': this.getTimes(this.fromData[i].settle_accounts_date),
617
+                  '挂号科室':  "血透室",
618
+                  '门诊费用': this.fromData[i].medfee_sumamt,
619
+                  '自费': this.fromData[i].psn_cash_pay,
620
+                  '起付线I': this.fromData[i].act_pay_dedc,
621
+                  '按比例自付II': this.fromData[i].psn_cash_pay,
622
+                  '小计I+II': this.fromData[i].act_pay_dedc + this.fromData[i].psn_cash_pay,
623
+                  '统筹基金': this.fromData[i].fund_pay_sumamt,
624
+                  '公务员补助': this.fromData[i].cvlserv_pay,
625
+                  '单位补充保险': hifes_pay,
626
+                  '煤矿补充保险': "0.00",
627
+                  "超封顶线费用": "0.00",
628
+                  '大额医疗保险应付': this.fromData[i].hifob_pay,
629
+                  '透析补助': "0.00",
630
+                  '大额合计':  "0.00",
631
+                  '实账支付额': "0.00",
632
+                  '诊断': this.GetDiagnosisName(this.fromData[i].diagnosis_id),
633
+                  "血透次数":this.fromData[i].DialysisCount,
634
+                  "置留管数量":0,
635
+                  "备注":"",
636
+
637
+                }
638
+                list.push(obj)
639
+              }
640
+              var insutype_name = ''
641
+              if (this.query_insutype == '310') {
642
+                insutype_name = '职工基本医疗保险'
643
+              } else if (this.query_insutype == '390') {
644
+                insutype_name = '城乡居民基本医疗保险'
592 645
               }
593
-              list.push(obj)
594
-            }
595
-            var insutype_name = ''
596
-            if (this.query_insutype == '310') {
597
-              insutype_name = '职工基本医疗保险'
598
-            } else if (this.query_insutype == '390') {
599
-              insutype_name = '城乡居民基本医疗保险'
600
-            }
601 646
 
602
-            import('@/vendor/Export2Excel').then(excel => {
603
-              const tHeader = ['结算金额', '姓名', '身份证', '个人编号', '门诊流水号', '挂号日期', '起付线', '统筹基金', '个人支付', '个账支付', '现金支付', '总费用', '冲销标志']
604
-              const filterVal = ['结算金额', '姓名', '身份证', '个人编号', '门诊流水号', '挂号日期', '起付线', '统筹基金', '个人支付', '个账支付', '现金支付', '总费用', '冲销标志']
605
-              const data = this.formatJson(filterVal, list)
606
-              excel.export_json_to_excel({
607
-                header: tHeader,
608
-                data,
609
-                filename:this.getTimes(this.selection[0].start_time)+ '~' + this.getTimes(this.selection[0].end_time)+ insutype_name + '对账报表'
647
+              import('@/vendor/Export2Excel').then(excel => {
648
+                const tHeader = ['序号', '姓名', '单位名称','个人编号', '门诊号', '挂号日期','挂号科室','门诊费用','自费', '起付线I','按比例自付II','小计I+II','统筹基金','公务员补助','单位补充保险','煤矿补充保险','超封顶线费用','大额医疗保险应付', '透析补助', '大额合计', '实账支付额', '诊断', '血透次数', '置留管数量','备注']
649
+                const filterVal = ['序号', '姓名', '单位名称','个人编号', '门诊号', '挂号日期','挂号科室','门诊费用','自费', '起付线I','按比例自付II','小计I+II','统筹基金','公务员补助','单位补充保险','煤矿补充保险','超封顶线费用','大额医疗保险应付', '透析补助', '大额合计', '实账支付额', '诊断', '血透次数', '置留管数量','备注']
650
+                // const filterVal = [ '姓名', '身份证', '个人编号', '门诊流水号', '挂号日期', '起付线', '统筹基金', '个人支付', '个账支付', '现金支付', '总费用', '冲销标志']
651
+                const merges = ['A1:A2', 'B1:B2', 'C1:E1', 'F1:H1', 'I1:K1', 'L1:N1', 'O1:Q1', 'R1:T1', 'U1:W1', 'X1:Z1', 'AA1:AC1', 'AD1:AF1', 'AG1:AI1', 'AJ1:AL1', 'AM1:AO1', 'AP1:AR1', 'AS1:AU1', 'AV1:AX1', 'AY1:BA1', 'BB1:BD1', 'BE1:BG1', 'BH1:BJ1', 'BK1:BM1']
652
+
653
+                const data = this.formatJson(filterVal, list)
654
+                excel.export_json_to_excel({
655
+                  header: tHeader,
656
+                  data,
657
+                  filename:this.getTimes(this.selection[0].start_time)+ '~' + this.getTimes(this.selection[0].end_time)+ insutype_name + '对账报表'
658
+                })
610 659
               })
611
-            })
660
+
661
+
662
+            }else{
663
+
664
+              var list = []
665
+              for (let i = 0; i < this.fromData.length; i++) {
666
+
667
+                var hifmi_pay = 0.00;
668
+
669
+                if(this.fromData[i].setl_detail.length > 0){
670
+                  var jsonObj = JSON.parse(this.fromData[i].setl_detail);
671
+                  console.log(jsonObj)
672
+                  for (let i = 0; i < jsonObj.length; i++) {
673
+                      if (jsonObj[i].fund_pay_type == '390200') {
674
+                        hifmi_pay = jsonObj[i].fund_payamt
675
+                      }
676
+                  }
677
+                }
678
+
679
+
680
+
681
+
682
+                let obj = {
683
+                  '序号': i+1,
684
+                  '姓名': this.fromData[i].psn_name,
685
+                  '个人编号': this.fromData[i].psn_no,
686
+                  '门诊号': this.fromData[i].mdtrt_id,
687
+                  '挂号日期': this.getTimes(this.fromData[i].settle_accounts_date),
688
+                  '诊断': this.GetDiagnosisName(this.fromData[i].diagnosis_id),
689
+                  '挂号科室': "血透室",
690
+                  '门诊费用': this.fromData[i].medfee_sumamt,
691
+                  '自费': this.fromData[i].psn_cash_pay,
692
+                  '起付线': this.fromData[i].act_pay_dedc,
693
+                  '按比例自付': this.fromData[i].psn_cash_pay,
694
+                  "超封顶线费用": "0.00",
695
+                  "合计": parseFloat(this.fromData[i].act_pay_dedc) + parseFloat(this.fromData[i].psn_cash_pay),
696
+                  '统筹基金': this.fromData[i].fund_pay_sumamt,
697
+                  '大病保险': hifmi_pay,
698
+                  '医疗救助': this.fromData[i].maf_pay,
699
+                  '实账支付额': "0.00",
700
+                  "血透次数":this.fromData[i].DialysisCount,
701
+                  "置留管数量":0,
702
+                  "备注":"",
703
+
704
+                }
705
+
706
+
707
+
708
+
709
+
710
+                list.push(obj)
711
+              }
712
+              var insutype_name = ''
713
+              if (this.query_insutype == '310') {
714
+                insutype_name = '职工基本医疗保险'
715
+              } else if (this.query_insutype == '390') {
716
+                insutype_name = '城乡居民基本医疗保险'
717
+              }
718
+
719
+              import('@/vendor/Export2Excel').then(excel => {
720
+                const tHeader = ['序号', '姓名','个人编号', '门诊号', '挂号日期', '诊断','挂号科室','门诊费用','自费', '起付线','按比例自付','超封顶线费用','合计','统筹基金','大病保险','医疗救助', '实账支付额', '血透次数', '置留管数量','备注']
721
+                const filterVal = ['序号', '姓名','个人编号', '门诊号', '挂号日期','诊断','挂号科室','门诊费用','自费', '起付线','按比例自付','超封顶线费用','合计','统筹基金','大病保险','医疗救助', '实账支付额', '血透次数', '置留管数量','备注']
722
+                // const filterVal = [ '姓名', '身份证', '个人编号', '门诊流水号', '挂号日期', '起付线', '统筹基金', '个人支付', '个账支付', '现金支付', '总费用', '冲销标志']
723
+                const merges = ['A1:A2', 'B1:B2', 'C1:E1', 'F1:H1', 'I1:K1', 'L1:N1', 'O1:Q1', 'R1:T1', 'U1:W1', 'X1:Z1', 'AA1:AC1', 'AD1:AF1', 'AG1:AI1', 'AJ1:AL1', 'AM1:AO1', 'AP1:AR1', 'AS1:AU1', 'AV1:AX1', 'AY1:BA1', 'BB1:BD1', 'BE1:BG1', 'BH1:BJ1', 'BK1:BM1']
724
+
725
+                const data = this.formatJson(filterVal, list)
726
+                excel.export_json_to_excel({
727
+                  header: tHeader,
728
+                  data,
729
+                  filename:this.getTimes(this.selection[0].start_time)+ '~' + this.getTimes(this.selection[0].end_time)+ insutype_name + '对账报表'
730
+                })
731
+              })
732
+
733
+
734
+
735
+
736
+
737
+
738
+            }
739
+
740
+
612 741
           }
613 742
         })
614 743
 
615 744
       }, formatJson(filterVal, jsonData) {
616 745
         return jsonData.map(v => filterVal.map(j => v[j]))
617
-      }
746
+      },GetDiagnosisName(id){
747
+        for(let i = 0;i < this.diagnoses.length; i++){
748
+          if(this.diagnoses[i].id == id){
749
+            return this.diagnoses[i].class_name
750
+          }
751
+        }
752
+        return ""
753
+
754
+      },  getInitData() {
755
+        getInitData().then(response => {
756
+          if (response.data.state == 0) {
757
+            this.$message.error(response.data.msg)
758
+            return false
759
+          } else {
760
+            this.diagnoses = response.data.data.diagnose
761
+
762
+
763
+          }
764
+        })
765
+
766
+      },
767
+
618 768
     },
619 769
     created() {
620 770
       this.getList()
621 771
       this.fetchAllAdminUsers()
772
+      this.getInitData()
622 773
 
623 774
     }
624 775
   }

+ 188 - 57
src/xt_pages/outpatientCharges/incomeStatistics.vue Просмотреть файл

@@ -11,18 +11,7 @@
11 11
           <el-button size="small" style="margin-left:10px;" class="filter-item" type="primary" @click="searchAction">
12 12
             搜索
13 13
           </el-button>
14
-          <el-select size="small" v-model="admin_user_id" placeholder="请选择" style="width:150px;margin-left:10px;" @change="changeDoctor">
15
-            <el-option
16
-              label="全部"
17
-              value="0">
18
-            </el-option>
19
-            <el-option
20
-              v-for="(item,index) in type"
21
-              :key="index"
22
-              :label="item.user_name"
23
-              :value="item.admin_user_id">
24
-            </el-option>
25
-          </el-select>
14
+
26 15
           <el-date-picker size="small" v-model="start_time" prefix-icon="el-icon-date"
27 16
                           @change="handleStartTimeChange" :editable="false" :clearable="false"
28 17
                           style="width: 196px;margin-right:10px;" type="date" placeholder="选择开始日期"
@@ -36,13 +25,13 @@
36 25
                           format="yyyy-MM-dd"
37 26
                           value-format="yyyy-MM-dd"
38 27
                           align="right"></el-date-picker>
39
-          <!--<el-radio v-model="radio" label="1">明细</el-radio>-->
40
-          <!--<el-radio v-model="radio" label="2">汇总</el-radio>-->
28
+          <el-radio v-model="radio" label="1" @change="changeType">汇总</el-radio>
29
+          <el-radio v-model="radio" label="2"  @change="changeType">明细</el-radio>
41 30
         </div>
42 31
         <el-button size="small" type="primary" @click="export_detail">报表下载</el-button>
43 32
       </div>
44 33
       <el-table :data="tableData" border style="width: 100%;" :row-style="{ color: '#303133' }"
45
-                :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}" highlight-current-row>
34
+                :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}" highlight-current-row  v-if="radio == '1'">
46 35
         <el-table-column
47 36
           prop="date"
48 37
           label="序号"
@@ -52,51 +41,167 @@
52 41
         >
53 42
         </el-table-column>
54 43
         <el-table-column align="center" prop="name" label="收费日期">
55
-          <template slot-scope="scope">{{ scope.row.selt_time }}</template>
44
+          <template slot-scope="scope" >{{ scope.row.settle_accounts_date }}</template>
45
+        </el-table-column>
46
+        <el-table-column align="center" prop="name" label="总金额">
47
+          <template slot-scope="scope">{{scope.row.medfee_sumamt}}</template>
48
+        </el-table-column>
49
+        <el-table-column align="center" prop="name" label="医保统筹金额">
50
+          <template slot-scope="scope">{{scope.row.fund_pay_sumamt}}</template>
51
+        </el-table-column>
52
+        <el-table-column align="center" prop="name" label="大额基金金额">
53
+          <template slot-scope="scope">{{scope.row.hifob_pay}}</template>
54
+        </el-table-column>
55
+        <el-table-column align="center" prop="name" label="大病基金金额">
56
+          <template slot-scope="scope">{{scope.row.hifmi_pay}}</template>
57
+        </el-table-column>
58
+        <el-table-column align="center" prop="name" label="补充保险基金金额">
59
+          <template slot-scope="scope">{{scope.row.hifes_pay}}</template>
60
+        </el-table-column>
61
+        <el-table-column align="center" prop="name" label="医疗救助基金金额">
62
+          <template slot-scope="scope">{{scope.row.maf_pay}}</template>
63
+        </el-table-column>
64
+        <el-table-column align="center" prop="name" label="公务员基金">
65
+          <template slot-scope="scope">{{scope.row.cvlserv_pay}}</template>
66
+        </el-table-column>
67
+        <el-table-column align="center" prop="name" label="个人支付基金">
68
+          <template slot-scope="scope">{{scope.row.psn_cash_pay}}</template>
56 69
         </el-table-column>
70
+        <el-table-column align="center" prop="name" label="折扣金额">
71
+          <template slot-scope="scope">{{scope.row.discount_price}}</template>
72
+        </el-table-column>
73
+        <el-table-column align="center" prop="name" label="优惠金额">
74
+          <template slot-scope="scope">{{scope.row.preferential_price}}</template>
75
+        </el-table-column>
76
+        <el-table-column align="center" prop="name" label="个人账户支付金额">
77
+          <template slot-scope="scope">{{scope.row.acct_pay}}</template>
78
+        </el-table-column>
79
+        <!--<el-table-column align="center" prop="name" label="预交金">-->
80
+          <!--<template slot-scope="scope">{{scope.row.medfee_sumamt}}</template>-->
81
+        <!--</el-table-column>-->
57 82
 
83
+        <!--<el-table-column align="center" prop="name" label="现金">-->
84
+          <!--<template slot-scope="scope">{{scope.row.medfee_sumamt}}</template>-->
85
+        <!--</el-table-column>-->
58 86
 
59
-        <el-table-column align="center" prop="name" label="患者名字">
60
-          <template slot-scope="scope">{{ scope.row.psn_name }}</template>
61
-        </el-table-column>
62
-        <!--<el-table-column align="center" prop="name" label="患者类型">-->
63
-          <!--<template slot-scope="scope"></template>-->
87
+        <!--<el-table-column align="center" prop="name" label="微信">-->
88
+          <!--<template slot-scope="scope">{{scope.row.medfee_sumamt}}</template>-->
64 89
         <!--</el-table-column>-->
65
-        <el-table-column align="center" prop="name" label="总金额">
66
-          <template slot-scope="scope">{{scope.row.medfee_sumamt}}</template>
90
+
91
+        <!--<el-table-column align="center" prop="name" label="操作">-->
92
+          <!--<template slot-scope="scope">-->
93
+            <!--<el-button size="mini" type="primary" @click="toDetail(scope.row)">详情</el-button>-->
94
+          <!--</template>-->
95
+        <!--</el-table-column>-->
96
+      </el-table>
97
+
98
+      <el-table :data="tableData" border style="width: 100%;" :row-style="{ color: '#303133' }"  v-if="radio == '2'"
99
+                :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}" highlight-current-row>
100
+        <el-table-column
101
+                prop="date"
102
+                label="序号"
103
+                width="60"
104
+                align="center"
105
+                type="index"
106
+        >
67 107
         </el-table-column>
68 108
 
109
+        <el-table-column align="center" prop="name" label="收费日期">
110
+          <template slot-scope="scope" >{{ scope.row.setl_time }}</template>
111
+        </el-table-column>
112
+        <el-table-column align="center" prop="name" label="姓名">
113
+          <template slot-scope="scope" >{{ scope.row.psn_name }}</template>
114
+        </el-table-column>
115
+        <el-table-column align="center" prop="name" label="姓名">
116
+          <template slot-scope="scope" >{{ scope.row.psn_name }}</template>
117
+        </el-table-column>
69 118
         <el-table-column align="center" prop="name" label="总金额">
70 119
           <template slot-scope="scope">{{scope.row.medfee_sumamt}}</template>
71 120
         </el-table-column>
121
+        <el-table-column align="center" prop="name" label="基金支付">
122
+          <template slot-scope="scope">{{scope.row.fund_pay_sumamt}}</template>
123
+        </el-table-column>
124
+        <el-table-column align="center" prop="name" label="个人支付基金">
125
+          <template slot-scope="scope">{{scope.row.psn_cash_pay}}</template>
126
+        </el-table-column>
72 127
 
128
+        <el-table-column align="center" prop="name" label="床位费">
129
+          <template slot-scope="scope">{{getPrice(scope.row.order_info,'01')}}</template>
130
+        </el-table-column>
73 131
 
132
+        <el-table-column align="center" prop="name" label="诊察费">
133
+          <template slot-scope="scope">{{getPrice(scope.row.order_info,'02')}}</template>
134
+        </el-table-column>
74 135
 
75
-        <el-table-column align="center" prop="name" label="实收金额">
76
-          <template slot-scope="scope">{{scope.row.reality_price}}</template>
136
+
137
+        <el-table-column align="center" prop="name" label="检查费">
138
+          <template slot-scope="scope">{{getPrice(scope.row.order_info,'03')}}</template>
77 139
         </el-table-column>
78
-        <el-table-column align="center" prop="name" label="科室">
79
-          <template slot-scope="scope">{{scope.row.p_info.department.name}}</template>
140
+
141
+        <el-table-column align="center" prop="name" label="化验费">
142
+          <template slot-scope="scope">{{getPrice(scope.row.order_info,'04')}}</template>
80 143
         </el-table-column>
81
-        <el-table-column align="center" prop="name" label="收费日期">
82
-          <template slot-scope="scope">  {{getTimes(scope.row.settle_accounts_date)}}</template>
144
+
145
+        <el-table-column align="center" prop="name" label="治疗费">
146
+          <template slot-scope="scope">{{getPrice(scope.row.order_info,'05')}}</template>
147
+        </el-table-column>
148
+
149
+
150
+        <el-table-column align="center" prop="name" label="手术费">
151
+          <template slot-scope="scope">{{getPrice(scope.row.order_info,'06')}}</template>
152
+        </el-table-column>
153
+
154
+        <el-table-column align="center" prop="name" label="护理费">
155
+          <template slot-scope="scope">{{getPrice(scope.row.order_info,'07')}}</template>
156
+        </el-table-column>
157
+
158
+
159
+        <el-table-column align="center" prop="name" label="卫生材料费">
160
+          <template slot-scope="scope">{{getPrice(scope.row.order_info,'08')}}</template>
161
+        </el-table-column>
162
+
163
+        <el-table-column align="center" prop="name" label="西药费">
164
+          <template slot-scope="scope">{{getPrice(scope.row.order_info,'09')}}</template>
165
+        </el-table-column>
166
+
167
+        <el-table-column align="center" prop="name" label="中药饮片费">
168
+          <template slot-scope="scope">{{getPrice(scope.row.order_info,'10')}}</template>
169
+        </el-table-column>
170
+
171
+
172
+        <el-table-column align="center" prop="name" label="中成药费">
173
+          <template slot-scope="scope">{{getPrice(scope.row.order_info,'11')}}</template>
174
+        </el-table-column>
175
+
176
+        <el-table-column align="center" prop="name" label="一般诊疗费">
177
+          <template slot-scope="scope">{{getPrice(scope.row.order_info,'12')}}</template>
83 178
         </el-table-column>
84
-        <el-table-column align="center" prop="name" label="收费员">
85
-          <template slot-scope="scope">{{ scope.row.p_info.doctor }}</template>
179
+
180
+        <el-table-column align="center" prop="name" label="挂号费">
181
+          <template slot-scope="scope">{{getPrice(scope.row.order_info,'13')}}</template>
86 182
         </el-table-column>
87
-        <el-table-column align="center" prop="name" label="状态">
88
-          <template slot-scope="scope">
89
-            <div v-if="scope.row.order_status == 1">待结算</div>
90
-            <div v-if="scope.row.order_status == 2">已结算</div>
91
-            <div v-if="scope.row.order_status == 3">已退费</div>
92
-          </template>
183
+
184
+        <el-table-column align="center" prop="name" label="其他费">
185
+          <template slot-scope="scope">{{getPrice(scope.row.order_info,'14')}}</template>
93 186
         </el-table-column>
94
-        <el-table-column align="center" prop="name" label="操作">
95
-          <template slot-scope="scope">
96
-            <el-button size="mini" type="primary" @click="toDetail(scope.row)">详情</el-button>
97
-          </template>
187
+        <el-table-column align="center" prop="name" label="医保支付">
188
+          <template slot-scope="scope">{{scope.row.psn_cash_pay}}</template>
98 189
         </el-table-column>
190
+        <el-table-column align="center" prop="name" label="现金">
191
+        <template slot-scope="scope">{{scope.row.psn_cash_pay}}</template>
192
+        </el-table-column>
193
+        <el-table-column align="center" prop="name" label="微信">
194
+        <template slot-scope="scope">{{scope.row.psn_cash_pay}}</template>
195
+        </el-table-column>
196
+        <el-table-column align="center" prop="name" label="支付宝">
197
+          <template slot-scope="scope">{{scope.row.psn_cash_pay}}</template>
198
+        </el-table-column>
199
+        <el-table-column align="center" prop="name" label="银行卡">
200
+          <template slot-scope="scope">{{scope.row.psn_cash_pay}}</template>
201
+        </el-table-column>
202
+
99 203
       </el-table>
204
+
100 205
       <el-pagination
101 206
         @size-change="handleSizeChange"
102 207
         @current-change="handleCurrentChange"
@@ -118,7 +223,7 @@
118 223
 
119 224
 <script>
120 225
   import BreadCrumb from '@/xt_pages/components/bread-crumb'
121
-  import { getHisOrderList,getDoctorList,getExportConsumeDetailList } from '@/api/his/his'
226
+  import { getIncomeStatisticsDataList,getDoctorList,getExportConsumeDetailList } from '@/api/his/his'
122 227
   import { uParseTime } from '@/utils/tools'
123 228
 
124 229
   export default {
@@ -132,6 +237,7 @@
132 237
           { path: false, name: '项目消费明细汇总' }
133 238
         ],
134 239
         tableData: [],
240
+        radio:'1',
135 241
         limit:10,
136 242
         page:1,
137 243
         keywords:"",
@@ -144,6 +250,35 @@
144 250
       }
145 251
     },
146 252
     methods: {
253
+      getPrice(order_info, number){
254
+
255
+
256
+
257
+
258
+
259
+      },
260
+      changeType(val){
261
+
262
+        let params= {
263
+          page : this.page,
264
+          limit: this.limit,
265
+          keywords:this.keywords,
266
+          start_time:this.start_time,
267
+          end_time: this.end_time,
268
+          statistics_type: this.radio
269
+        }
270
+        getIncomeStatisticsDataList(params).then(response => {
271
+          if (response.data.state == 0) {
272
+            this.$message.error(response.data.msg)
273
+            return false
274
+          } else {
275
+            this.tableData = response.data.data.list
276
+            this.total = response.data.data.total
277
+          }
278
+        })
279
+
280
+
281
+      },
147 282
       export_detail(){
148 283
         let params= {
149 284
           start_time:this.start_time,
@@ -248,33 +383,29 @@
248 383
       },  formatJson(filterVal, jsonData) {
249 384
         return jsonData.map(v => filterVal.map(j => v[j]))
250 385
       },
251
-      changeDoctor(){
252
-        this.page = 1
253
-        this.keywords=""
254
-        this.getHisOrderList()
255
-      },
386
+
256 387
       handleSizeChange(limit){
257 388
         this.limit = limit;
258
-        this.getHisOrderList()
389
+        this.getIncomeStatisticsDataList()
259 390
 
260 391
       },handleCurrentChange(page){
261 392
         this.page = page;
262
-        this.getHisOrderList()
393
+        this.getIncomeStatisticsDataList()
263 394
 
264 395
 
265 396
       },
266 397
       handleStartTimeChange(){
267 398
         this.page = 1
268 399
         this.keywords=""
269
-        this.getHisOrderList()
400
+        this.getIncomeStatisticsDataList()
270 401
       },handleEndTimeChange(){
271 402
         this.page = 1
272 403
         this.keywords=""
273
-        this.getHisOrderList()
404
+        this.getIncomeStatisticsDataList()
274 405
       },
275 406
       searchAction(){
276 407
         this.page = 1
277
-        this.getHisOrderList()
408
+        this.getIncomeStatisticsDataList()
278 409
 
279 410
 
280 411
       },
@@ -288,21 +419,21 @@
288 419
           return uParseTime(value, temp)
289 420
         }
290 421
         return ''
291
-      },getHisOrderList(){
422
+      },getIncomeStatisticsDataList(){
292 423
         let params= {
293 424
           page : this.page,
294 425
           limit: this.limit,
295 426
           keywords:this.keywords,
296 427
           start_time:this.start_time,
297 428
           end_time: this.end_time,
298
-          type: this.admin_user_id
429
+          statistics_type: this.radio
299 430
         }
300
-        getHisOrderList(params).then(response => {
431
+        getIncomeStatisticsDataList(params).then(response => {
301 432
           if (response.data.state == 0) {
302 433
             this.$message.error(response.data.msg)
303 434
             return false
304 435
           } else {
305
-            this.tableData = response.data.data.order
436
+            this.tableData = response.data.data.list
306 437
             this.total = response.data.data.total
307 438
           }
308 439
         })
@@ -321,7 +452,7 @@
321 452
       }
322 453
     }, created() {
323 454
      this.getDoctorList()
324
-     this.getHisOrderList()
455
+     this.getIncomeStatisticsDataList()
325 456
 
326 457
 
327 458
     }

+ 9 - 6
src/xt_pages/outpatientCharges/invoicePrint.vue Просмотреть файл

@@ -15,6 +15,7 @@
15 15
         <div class='dialysisPage'>
16 16
             <printOne v-if="org_id != 10106" :paramsObj="invoiceParams"></printOne>
17 17
             <printTwo v-if="org_id == 10106" :paramsObj="invoiceParams"></printTwo>
18
+            <!-- <printThree :paramsObj="invoiceParams"></printThree> -->
18 19
         </div>
19 20
     </div>
20 21
   </div>
@@ -23,11 +24,13 @@
23 24
 <script>
24 25
 import printOne from './invoiceTemplate/printOne'
25 26
 import printTwo from './invoiceTemplate/printTwo'
27
+import printThree from './invoiceTemplate/printThree'
26 28
 export default {
27
-  name: "invoicePrint",
29
+   name: "invoicePrint",
28 30
   components: {
29 31
     printOne,
30
-    printTwo
32
+    printTwo,
33
+    printThree
31 34
   },
32 35
   props:{
33 36
     invoiceParams:Object
@@ -37,7 +40,7 @@ export default {
37 40
       childResponse: {},
38 41
     //   invoiceParams:{},
39 42
      org_id:''
40
-      
43
+
41 44
 
42 45
     };
43 46
   },
@@ -73,7 +76,7 @@ export default {
73 76
             style: style,
74 77
             scanStyles: false
75 78
         });
76
-      
79
+
77 80
 
78 81
       // if (this.org_template_info.template_id == 1) {
79 82
       //   printJS({
@@ -93,7 +96,7 @@ export default {
93 96
     paramsObj:{//深度监听,可监听到对象、数组的变化
94 97
       handler(val, oldVal){
95 98
         this.invoiceParams = val
96
-        
99
+
97 100
       },
98 101
       deep:true
99 102
     }
@@ -147,7 +150,7 @@ export default {
147 150
 }
148 151
 .actionBar{
149 152
     display: flex;
150
-    justify-content: space-between; 
153
+    justify-content: space-between;
151 154
     line-height: 24px;
152 155
     padding:0 10px;
153 156
 }

+ 3 - 1
src/xt_pages/outpatientCharges/invoiceTemplate/printOne.vue Просмотреть файл

@@ -141,6 +141,7 @@ export default {
141 141
         let params = {
142 142
             order_id: this.paramsObj.order_id,
143 143
             patient_id: this.paramsObj.patient_id,
144
+            number: this.paramsObj.number,
144 145
         }
145 146
         this.getInvoice(params)
146 147
         // var data = new Date();
@@ -192,7 +193,7 @@ export default {
192 193
             }
193 194
 
194 195
             var unit = "仟佰拾亿仟佰拾万仟佰拾元角分", str = "";
195
-            n += "00";  
196
+            n += "00";
196 197
 
197 198
             var indexpoint = n.indexOf('.');  // 如果是小数,截取小数点前面的位数
198 199
 
@@ -217,6 +218,7 @@ export default {
217 218
                 let params = {
218 219
                     order_id: val.order_id,
219 220
                     patient_id: val.patient_id,
221
+                    number: val.number,
220 222
                 }
221 223
                 this.getInvoice(params)
222 224
 

+ 0 - 0
src/xt_pages/outpatientCharges/invoiceTemplate/printThree.vue Просмотреть файл


Некоторые файлы не были показаны из-за большого количества измененных файлов