Bladeren bron

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

XMLWAN 2 jaren geleden
bovenliggende
commit
f84e44cb43
100 gewijzigde bestanden met toevoegingen van 14838 en 4322 verwijderingen
  1. 1429 396
      package-lock.json
  2. 0 1
      src/api/advice.js
  3. 20 0
      src/api/his/his.js
  4. 16 0
      src/api/his/his_tools.js
  5. 66 0
      src/api/pharmacy.js
  6. 1 0
      src/lang/zh.js
  7. 4 4
      src/router/index.js
  8. 8 0
      src/router/modules/drugs.js
  9. 12 0
      src/router/modules/hisTool.js
  10. 13 1
      src/router/modules/patient.js
  11. 8 0
      src/router/modules/stock.js
  12. 30 0
      src/store/modules/globalConfig.js
  13. 1 1
      src/utils/request.js
  14. 206 125
      src/xt_pages/Pharmacy/DispensingDetails.vue
  15. 19 8
      src/xt_pages/Pharmacy/DrugDispensing.vue
  16. 10 12
      src/xt_pages/data/components/addInspection.vue
  17. 4 4
      src/xt_pages/data/components/editInspection.vue
  18. 1 0
      src/xt_pages/data/components/templateTable.vue
  19. 1 1
      src/xt_pages/dialysis/batch_print/batch_print_order_four.vue
  20. 1062 495
      src/xt_pages/dialysis/batch_print/batch_print_order_six.vue
  21. 1 1
      src/xt_pages/dialysis/batch_print/batch_print_order_three.vue
  22. 15 15
      src/xt_pages/dialysis/bloodPresssWatch.vue
  23. 2 2
      src/xt_pages/dialysis/details/DialysisPrescription.vue
  24. 16 9
      src/xt_pages/dialysis/details/dialog/DoctorAdviceDialog.vue
  25. 2 1
      src/xt_pages/dialysis/details/dialog/assessmentBeforeDislysisDialog.vue
  26. 34 32
      src/xt_pages/dialysis/details/dialog/dialysisPrescriptionDialog.vue
  27. 18 3
      src/xt_pages/dialysis/details/dialog/monitor_dialog.vue
  28. 8 8
      src/xt_pages/dialysis/details/dialysisMonitoring.vue
  29. 37 41
      src/xt_pages/dialysis/dialysisDoctorAdvice.vue
  30. 39 10
      src/xt_pages/dialysis/dialysisPrintOrder.vue
  31. 26 30
      src/xt_pages/dialysis/doctorAdvicePrint.vue
  32. 2 2
      src/xt_pages/dialysis/template/DialysisPrintOrderEleven.vue
  33. 1 1
      src/xt_pages/dialysis/template/DialysisPrintOrderFifty.vue
  34. 1888 0
      src/xt_pages/dialysis/template/DialysisPrintOrderFiftyFour.vue
  35. 8 8
      src/xt_pages/dialysis/template/DialysisPrintOrderFiftyOne.vue
  36. 1024 72
      src/xt_pages/dialysis/template/DialysisPrintOrderFiftyThree.vue
  37. 1 1
      src/xt_pages/dialysis/template/DialysisPrintOrderFortyNine.vue
  38. 60 31
      src/xt_pages/dialysis/template/DialysisPrintOrderFortySeven.vue
  39. 1 1
      src/xt_pages/dialysis/template/DialysisPrintOrderFortySix.vue
  40. 1 1
      src/xt_pages/dialysis/template/DialysisPrintOrderFour.vue
  41. 3 3
      src/xt_pages/dialysis/template/DialysisPrintOrderNineteen.vue
  42. 2350 849
      src/xt_pages/dialysis/template/DialysisPrintOrderSix.vue
  43. 3 3
      src/xt_pages/dialysis/template/DialysisPrintOrderTen.vue
  44. 4 3
      src/xt_pages/dialysis/template/DialysisPrintOrderThirtyOne.vue
  45. 1 1
      src/xt_pages/dialysis/template/DialysisPrintOrderThree.vue
  46. 4 4
      src/xt_pages/dialysis/template/dialysisPrintOrderFive.vue
  47. 838 368
      src/xt_pages/dialysis/template/dialysisPrintOrderTwelve.vue
  48. 1 1
      src/xt_pages/hospitalStation/components/chargeDialog.vue
  49. 2 2
      src/xt_pages/hospitalStation/components/prescriptionTable.vue
  50. 10 3
      src/xt_pages/hospitalStation/invoicePrint.vue
  51. 1 1
      src/xt_pages/hospitalStation/invoiceTemplate/printThree.vue
  52. 421 247
      src/xt_pages/hospitalStation/invoiceTemplate/printTwo.vue
  53. 1034 804
      src/xt_pages/hospitalStation/summary.vue
  54. 3 3
      src/xt_pages/hospitalStation/template/printFive.vue
  55. 17 3
      src/xt_pages/outpatientCharges/allListPrint.vue
  56. 187 152
      src/xt_pages/outpatientCharges/allListTemplate/summaryPrint.vue
  57. 1 1
      src/xt_pages/outpatientCharges/components/chargeDialog.vue
  58. 1 3
      src/xt_pages/outpatientCharges/components/registerDialog.vue
  59. 4 1
      src/xt_pages/outpatientCharges/components/registerDialog9504.vue
  60. 1 1
      src/xt_pages/outpatientCharges/costComparison.vue
  61. 7 7
      src/xt_pages/outpatientCharges/listPrint.vue
  62. 135 49
      src/xt_pages/outpatientCharges/listTemplate/listPrintTwo.vue
  63. 3 4
      src/xt_pages/outpatientCharges/listTemplate/printTwo10265.vue
  64. 38 10
      src/xt_pages/outpatientCharges/outpatientChargesManagement.vue
  65. 53 40
      src/xt_pages/outpatientCharges/statementPrint.vue
  66. 182 0
      src/xt_pages/outpatientCharges/statementTemplate/printFive.vue
  67. 423 257
      src/xt_pages/outpatientCharges/summary.vue
  68. 1 1
      src/xt_pages/outpatientDoctorStation/doctorDesk.vue
  69. 43 6
      src/xt_pages/outpatientDoctorStation/recordPrint.vue
  70. 654 0
      src/xt_pages/outpatientDoctorStation/recordTemplate/printThree.vue
  71. 54 0
      src/xt_pages/outpatientDoctorStation/zujian/checkbox.vue
  72. 73 0
      src/xt_pages/outpatientDoctorStation/zujian/labelbox.vue
  73. 20 6
      src/xt_pages/outpatientTool/components/detailStatistics.vue
  74. 35 23
      src/xt_pages/outpatientTool/components/gatherStatistics.vue
  75. 63 17
      src/xt_pages/outpatientTool/detailPrint.vue
  76. 703 0
      src/xt_pages/outpatientTool/export.vue
  77. 713 0
      src/xt_pages/outpatientTool/exportOne.vue
  78. 59 5
      src/xt_pages/outpatientTool/gatherPrint.vue
  79. 1 1
      src/xt_pages/outpatientTool/gatherPrintInvoice.vue
  80. 1 2
      src/xt_pages/outpatientTool/statistics.vue
  81. 14 8
      src/xt_pages/qcd/patientControlAnalysis.vue
  82. 56 34
      src/xt_pages/stock/detail/print.vue
  83. 33 6
      src/xt_pages/stock/detail/stockOutDetail.vue
  84. 1 1
      src/xt_pages/stock/drugs/cancelDrugOrderPrint.vue
  85. 8 3
      src/xt_pages/stock/drugs/components/drugOutDetail.vue
  86. 41 0
      src/xt_pages/stock/drugs/drugStockInOrder.vue
  87. 24 5
      src/xt_pages/stock/drugs/drugStockInOrderAdd.vue
  88. 2 2
      src/xt_pages/stock/drugs/drugStockInOrderDetailPrint.vue
  89. 48 6
      src/xt_pages/stock/drugs/drugStockOutOrder.vue
  90. 19 40
      src/xt_pages/stock/drugs/drugStockOutOrderAdd.vue
  91. 13 12
      src/xt_pages/stock/drugs/drugStockOutOrderDetailPrint.vue
  92. 1 1
      src/xt_pages/stock/drugs/inventory.vue
  93. 4 0
      src/xt_pages/stock/drugs/inventoryDetails.vue
  94. 137 0
      src/xt_pages/stock/drugs/print.vue
  95. 2 1
      src/xt_pages/stock/inventory.vue
  96. 5 0
      src/xt_pages/stock/inventoryDetails.vue
  97. 1 1
      src/xt_pages/stock/inventoryPrint.vue
  98. 136 0
      src/xt_pages/stock/print_all.vue
  99. 51 4
      src/xt_pages/stock/stockInOrder.vue
  100. 0 0
      src/xt_pages/stock/stockInOrderAdd.vue

Diff onderdrukt omdat het te groot bestand
+ 1429 - 396
package-lock.json


+ 0 - 1
src/api/advice.js Bestand weergeven

@@ -494,7 +494,6 @@ export function GetLastOrNextDoctorAdvice(params) {
494 494
 }
495 495
 
496 496
 export function getSchedualDoctors(params) {
497
-  console.log('中国国323322332232323232323', params)
498 497
   return request({
499 498
     url: '/api/schedule/advices',
500 499
     method: 'get',

+ 20 - 0
src/api/his/his.js Bestand weergeven

@@ -660,3 +660,23 @@ export function getPresciptionTemplateDetail(params) {
660 660
     params: params
661 661
   })
662 662
 }
663
+
664
+
665
+
666
+export function getHisData(params) {
667
+  return request({
668
+    url: '/data',
669
+    method: 'get',
670
+    params: params
671
+  })
672
+}
673
+
674
+export function getHisDataTwo(params) {
675
+  return request({
676
+    url: '/handleOrder10215two',
677
+    method: 'get',
678
+    params: params
679
+  })
680
+}
681
+
682
+

+ 16 - 0
src/api/his/his_tools.js Bestand weergeven

@@ -30,3 +30,19 @@ export function GetDetailPatients(params) {
30 30
     params: params
31 31
   })
32 32
 }
33
+
34
+export function getHisOrderList(params) {
35
+  return request({
36
+    url: '/api/his/gethisorderlist',
37
+    method: 'Get',
38
+    params: params
39
+  })
40
+}
41
+
42
+export function getHisAdviceOrderList(params) {
43
+  return request({
44
+    url: '/api/his/gethisadviceorderlist',
45
+    method: 'get',
46
+    params: params
47
+  })
48
+}

+ 66 - 0
src/api/pharmacy.js Bestand weergeven

@@ -0,0 +1,66 @@
1
+import request from '@/utils/request'
2
+
3
+//获取当天发药的人数
4
+export function todaynumber(params) {
5
+  return request({
6
+    url: '/api/pharmacy/todaynumber',
7
+    method: 'get',
8
+    params: params
9
+  })
10
+}
11
+//获取当天待发药的所有患者
12
+export function waitingdrug(params) {
13
+  return request({
14
+    url: '/api/pharmacy/waitingdrug',
15
+    method: 'get',
16
+    params: params
17
+  })
18
+}
19
+//获取当天已发药的所有患者
20
+export function issueddrugs(params) {
21
+  return request({
22
+    url: '/api/pharmacy/issueddrugs',
23
+    method: 'get',
24
+    params: params
25
+  })
26
+}
27
+//获取当天该患者的所有信息
28
+export function getpharmacycontent(params) {
29
+  return request({
30
+    url: '/api/pharmacy/getpharmacycontent',
31
+    method: 'get',
32
+    params: params
33
+  })
34
+}
35
+//发药按钮点击
36
+export function dispensingmedicine(params) {
37
+  return request({
38
+    url: '/api/pharmacy/dispensingmedicine',
39
+    method: 'get',
40
+    params: params
41
+  })
42
+}
43
+//退药按钮点击
44
+export function drugwithdrawal(params) {
45
+  return request({
46
+    url: '/api/pharmacy/drugwithdrawal',
47
+    method: 'get',
48
+    params: params
49
+  })
50
+}
51
+//获取发药明细的患者列表
52
+export function dispensingdetails(params) {
53
+  return request({
54
+    url: '/api/pharmacy/dispensingdetails',
55
+    method: 'get',
56
+    params: params
57
+  })
58
+}
59
+//发药明细-详情
60
+export function prescriptiondetails(params) {
61
+  return request({
62
+    url: '/api/pharmacy/prescriptiondetails',
63
+    method: 'get',
64
+    params: params
65
+  })
66
+}

+ 1 - 0
src/lang/zh.js Bestand weergeven

@@ -223,6 +223,7 @@ export default {
223 223
     data_upload: '一键上报',
224 224
     fast_upload: '快捷上报',
225 225
     export: '一键导出',
226
+    exportOne: '测试导出',
226 227
     upload_config: '质控上报配置',
227 228
     quality_control: '质控上报',
228 229
     remind_print: '排版提醒打印',

+ 4 - 4
src/router/index.js Bestand weergeven

@@ -158,10 +158,10 @@ var _asy_router_map = [
158 158
   dialysis,
159 159
   stock,
160 160
   drugs,
161
-  selfPreparedMedicine,  //自备药管理模块
162
-  wareHouseManage,  //仓库管理模块
163
-  DepositManagement, //押金管理模块
164
-  inventoryTransfer,    //库存调拨模块
161
+  selfPreparedMedicine, // 自备药管理模块
162
+  wareHouseManage, // 仓库管理模块
163
+  DepositManagement, // 押金管理模块
164
+  inventoryTransfer, // 库存调拨模块
165 165
   PatientDispensing, // 患者发药模块
166 166
   DrugDispensing, // 药房管理模块
167 167
   DispensingDetails, // 药房管理模块

+ 8 - 0
src/router/modules/drugs.js Bestand weergeven

@@ -76,6 +76,14 @@ export default {
76 76
       is_menu: false,
77 77
       meta: { title: 'inventoryPrint', noCache: true }
78 78
     },
79
+    {
80
+      path: '/stock/drugs/print',
81
+      component: () => import('@/xt_pages/stock/drugs/print'),
82
+      name: 'print',
83
+      hidden: true,
84
+      is_menu: false,
85
+      meta: { title: 'print', noCache: true }
86
+    },
79 87
     // {
80 88
     //   path: '/stock/drugs/stock/return',
81 89
     //   component: () => import('@/xt_pages/stock/drugs/drugSalesReturnOrder'),

+ 12 - 0
src/router/modules/hisTool.js Bestand weergeven

@@ -107,6 +107,18 @@ export default {
107 107
       hidden: true,
108 108
       is_menu: false,
109 109
       meta: { title: 'gatherPrint', noCache: true }
110
+    },
111
+    {
112
+      path: '/hisTool/export',
113
+      component: () => import('@/xt_pages/outpatientTool/export'),
114
+      name: 'export',
115
+      meta: { title: 'export', noCache: true }
116
+    },
117
+    {
118
+      path: '/hisTool/exportOne',
119
+      component: () => import('@/xt_pages/outpatientTool/exportOne'),
120
+      name: 'exportOne',
121
+      meta: { title: 'exportOne', noCache: true }
110 122
     }
111 123
   ]
112 124
 }

+ 13 - 1
src/router/modules/patient.js Bestand weergeven

@@ -226,6 +226,17 @@ export default {
226 226
       noCache: true
227 227
     }
228 228
   },
229
+  {
230
+    path: '/patient/patient/templateSummary/print_1',
231
+    component: () => import('@/xt_pages/user/templateSummaryPrint_1'),
232
+    hidden: true,
233
+    is_menu: false,
234
+    name: 'templateSummary_1',
235
+    meta: {
236
+      title: 'templateSummary_1',
237
+      noCache: true
238
+    }
239
+  },
229 240
   {
230 241
     path: '/patient/patient/hospitalSummary/print',
231 242
     component: () => import('@/xt_pages/user/hospitalSummaryPrint'),
@@ -236,6 +247,7 @@ export default {
236 247
       title: 'templateSummary',
237 248
       noCache: true
238 249
     }
239
-  }
250
+  },
251
+
240 252
   ]
241 253
 }

+ 8 - 0
src/router/modules/stock.js Bestand weergeven

@@ -99,6 +99,14 @@ export default {
99 99
       is_menu: false,
100 100
       meta: { title: 'inventoryPrint', noCache: true }
101 101
     },
102
+    {
103
+      path: '/stock/print_all',
104
+      component: () => import('@/xt_pages/stock/print_all'),
105
+      name: 'print_all',
106
+      hidden: true,
107
+      is_menu: false,
108
+      meta: { title: 'print_all', noCache: true }
109
+    },
102 110
 
103 111
     // {
104 112
     //   path: "/stock/",

+ 30 - 0
src/store/modules/globalConfig.js Bestand weergeven

@@ -659,6 +659,36 @@ const global_config = {
659 659
         sodium: 1,
660 660
         calcium: 1,
661 661
         bicarbonate: 1
662
+      },
663
+      31: {
664
+        id: 31,
665
+        name: 'HPD',
666
+        dialysis_duration: 1,
667
+        replacement_way: 1,
668
+        hemodialysis_machine: 2,
669
+        blood_filter: 1,
670
+        perfusion_apparatus: 2,
671
+        blood_flow_volume: 1,
672
+        dialysate_flow: 1,
673
+        kalium: 1,
674
+        sodium: 1,
675
+        calcium: 1,
676
+        bicarbonate: 1
677
+      },
678
+      32: {
679
+        id: 32,
680
+        name: 'HDP',
681
+        dialysis_duration: 1,
682
+        replacement_way: 1,
683
+        hemodialysis_machine: 2,
684
+        blood_filter: 1,
685
+        perfusion_apparatus: 2,
686
+        blood_flow_volume: 1,
687
+        dialysate_flow: 1,
688
+        kalium: 1,
689
+        sodium: 1,
690
+        calcium: 1,
691
+        bicarbonate: 1
662 692
       }
663 693
     },
664 694
     anticoagulants_confit: { // 抗凝剂

+ 1 - 1
src/utils/request.js Bestand weergeven

@@ -6,7 +6,7 @@ import store from '@/store'
6 6
 // create an axios instance
7 7
 const service = axios.create({
8 8
   baseURL: process.env.BASE_API, // api的base_url
9
-  timeout: 30000, // request timeout
9
+  timeout: 3000000, // request timeout
10 10
   withCredentials: true
11 11
 })
12 12
 

+ 206 - 125
src/xt_pages/Pharmacy/DispensingDetails.vue Bestand weergeven

@@ -1,133 +1,214 @@
1
-<template>
2
-  <div class="main-contain">
3
-    <div class="position">
4
-      <bread-crumb :crumbs="crumbs"></bread-crumb>
5
-    </div>
6
-    <div class="app-container">
7
-      <div
8
-        style="
9
-          justify-content: space-between;
10
-          margin: 0px 0 12px 0;
11
-          display: flex;
12
-          align-items: center;
13
-        "
14
-      >
15
-        <div>
16
-          <el-input
17
-            size="small"
18
-            style="width: 200px; margin-left: 10px"
19
-            class="filter-item"
20
-            v-model="name"
21
-            placeholder="请输入患者姓名"
22
-          ></el-input>
1
+<template><!--发药明细-->
2
+<!--  <div class="main-contain">-->
3
+<!--    <div class="position">-->
4
+<!--      <bread-crumb :crumbs="crumbs"></bread-crumb>-->
5
+<!--    </div>-->
6
+<!--    <div class="app-container">-->
7
+<!--      <div-->
8
+<!--        style="-->
9
+<!--          justify-content: space-between;-->
10
+<!--          margin: 0px 0 12px 0;-->
11
+<!--          display: flex;-->
12
+<!--          align-items: center;-->
13
+<!--        "-->
14
+<!--      >-->
15
+<!--        <div>-->
16
+<!--          <el-input-->
17
+<!--            size="small"-->
18
+<!--            style="width: 200px; margin-left: 10px"-->
19
+<!--            class="filter-item"-->
20
+<!--            v-model="keyword"-->
21
+<!--            placeholder="请输入患者姓名"-->
22
+<!--          ></el-input>-->
23 23
 
24
-          <el-date-picker
25
-            size="small"
26
-            v-model="start_time"
27
-            prefix-icon="el-icon-date"
28
-            :editable="false"
29
-            style="width: 196px"
30
-            type="date"
31
-            placeholder="选择日期时间"
32
-            align="right"
33
-            format="yyyy-MM-dd"
34
-            value-format="yyyy-MM-dd"
35
-            @change="startTimeChange"
36
-          ></el-date-picker
37
-          >-
38
-          <el-date-picker
39
-            size="small"
40
-            v-model="end_time"
41
-            prefix-icon="el-icon-date"
42
-            :editable="false"
43
-            style="width: 196px"
44
-            type="date"
45
-            placeholder="选择日期时间"
46
-            align="right"
47
-            format="yyyy-MM-dd"
48
-            value-format="yyyy-MM-dd"
49
-            @change="endTimeChange"
50
-          ></el-date-picker>
24
+<!--          <el-date-picker-->
25
+<!--            size="small"-->
26
+<!--            v-model="start_time"-->
27
+<!--            prefix-icon="el-icon-date"-->
28
+<!--            :editable="false"-->
29
+<!--            style="width: 196px"-->
30
+<!--            type="date"-->
31
+<!--            placeholder="选择日期时间"-->
32
+<!--            align="right"-->
33
+<!--            format="yyyy-MM-dd"-->
34
+<!--            value-format="yyyy-MM-dd"-->
35
+<!--            @change="startTimeChange"-->
36
+<!--          ></el-date-picker-->
37
+<!--          >- -->
38
+<!--          <el-date-picker-->
39
+<!--            size="small"-->
40
+<!--            v-model="end_time"-->
41
+<!--            prefix-icon="el-icon-date"-->
42
+<!--            :editable="false"-->
43
+<!--            style="width: 196px"-->
44
+<!--            type="date"-->
45
+<!--            placeholder="选择日期时间"-->
46
+<!--            align="right"-->
47
+<!--            format="yyyy-MM-dd"-->
48
+<!--            value-format="yyyy-MM-dd"-->
49
+<!--            @change="endTimeChange"-->
50
+<!--          ></el-date-picker>-->
51 51
 
52
-          <el-button
53
-            size="small"
54
-            class="filter-item"
55
-            type="primary"
56
-            icon="el-icon-search"
57
-            @click="search"
58
-            >查询</el-button
59
-          >
60
-        </div>
61
-      </div>
62
-      <el-table
63
-        :row-style="{ color: '#303133' }"
64
-        :header-cell-style="{
65
-          backgroundColor: 'rgb(245, 247, 250)',
66
-          color: '#606266',
67
-        }"
68
-        style="width: 1651px"
69
-        :data="tableList"
70
-        :class="signAndWeighBoxPatients"
71
-        border
72
-      >
73
-        <el-table-column type="index" label="序号" align="center" width="250">
74
-        </el-table-column>
75
-        <el-table-column label="患者名称" align="center" width="300">
76
-          <template slot-scope="scope"> </template>
77
-        </el-table-column>
52
+<!--          <el-button-->
53
+<!--            size="small"-->
54
+<!--            class="filter-item"-->
55
+<!--            type="primary"-->
56
+<!--            icon="el-icon-search"-->
57
+<!--            @click="query"-->
58
+<!--            >查询</el-button-->
59
+<!--          >-->
60
+<!--        </div>-->
61
+<!--      </div>-->
62
+<!--      <el-table-->
63
+<!--        :row-style="{ color: '#303133' }"-->
64
+<!--        :header-cell-style="{-->
65
+<!--          backgroundColor: 'rgb(245, 247, 250)',-->
66
+<!--          color: '#606266',-->
67
+<!--        }"-->
68
+<!--        style="width: 1651px"-->
69
+<!--        :data="tableList"-->
70
+<!--        :class="signAndWeighBoxPatients"-->
71
+<!--        border-->
72
+<!--      >-->
73
+<!--        <el-table-column type="index" label="序号" align="center" width="250">-->
74
+<!--        </el-table-column>-->
75
+<!--        <el-table-column label="患者名称" align="center" width="300">-->
76
+<!--          <template slot-scope="scope">-->
77
+<!--            <span>{{scope.row.Name  ? scope.row.Name  : ""}}</span>-->
78
+<!--          </template>-->
79
+<!--        </el-table-column>-->
78 80
 
79
-        <el-table-column label="开立医生" align="center" width="300">
80
-          <template slot-scope="scope"> </template>
81
-        </el-table-column>
82
-        <el-table-column label="发药时间" align="center" width="400">
83
-          <template slot-scope="scope"> </template>
84
-        </el-table-column>
85
-        <el-table-column label="操作" align="center" width="400">
86
-          <template slot-scope="scope">
87
-            <el-button type="primary" @click="views">查看</el-button>
88
-          </template>
89
-        </el-table-column>
90
-      </el-table>
91
-    </div>
81
+<!--        <el-table-column label="开立医生" align="center" width="300">-->
82
+<!--          <template slot-scope="scope">-->
83
+<!--            <span>{{scope.row.DoctorName  ? scope.row.DoctorName  : ""}}</span>-->
84
+<!--          </template>-->
85
+<!--        </el-table-column>-->
86
+<!--        <el-table-column label="发药时间" align="center" width="400">-->
87
+<!--          <template slot-scope="scope">-->
88
+<!--            <span>{{scope.row.RecordDate  ? scope.row.RecordDate  : ""}}</span>-->
89
+<!--          </template>-->
90
+<!--        </el-table-column>-->
91
+<!--        <el-table-column label="操作" align="center" width="400">-->
92
+<!--          <template slot-scope="scope">-->
93
+<!--            <el-button type="primary" @click="views(scope.row)">查看</el-button>-->
94
+<!--          </template>-->
95
+<!--        </el-table-column>-->
96
+<!--      </el-table>-->
97
+<!--      <el-pagination-->
98
+<!--        @size-change="handleSizeChange"-->
99
+<!--        @current-change="handleCurrentChange"-->
100
+<!--        :page-sizes="[10, 50, 100, 200, 500, 1000]"-->
101
+<!--        :page-size="10"-->
102
+<!--        background-->
103
+<!--        align="right"-->
104
+<!--        style="margin-top: 20px"-->
105
+<!--        layout="total, sizes, prev, pager, next, jumper"-->
106
+<!--        :total="total"-->
107
+<!--      >-->
108
+<!--      </el-pagination>-->
109
+<!--    </div>-->
92 110
 
93
-    <details-print
94
-      ref="detailsprint"
95
-      :visibility="isVisibility"
96
-      :propsTable="propsTable"
97
-    >
98
-    </details-print>
99
-  </div>
111
+<!--    <details-print-->
112
+<!--      ref="detailsprint"-->
113
+<!--      :visibility="isVisibility"-->
114
+<!--      :propsTable="propsTable"-->
115
+<!--    >-->
116
+<!--    </details-print>-->
117
+
118
+<!--  </div>-->
100 119
 </template>
101 120
 
102
-<script>
103
-import detailsPrint from "./print/details.vue";
104
-import BreadCrumb from "@/xt_pages/components/bread-crumb";
105
-export default {
106
-  components: {
107
-    detailsPrint,
108
-    BreadCrumb,
109
-  },
110
-  data() {
111
-    return {
112
-      crumbs: [
113
-        { path: false, name: "发药明细" },
114
-        { path: "/Pharmacy/DispensingDetails", name: "发药明细" },
115
-      ],
116
-      name: "",
117
-      tableList: [{}],
118
-      signAndWeighBoxPatients: "sign-and-weigh-box-patients",
119
-    };
120
-  },
121
+<!--<script>-->
122
+<!--import detailsPrint from "./print/details.vue";-->
123
+<!--import BreadCrumb from "@/xt_pages/components/bread-crumb";-->
124
+<!--import {-->
125
+<!--  dispensingdetails,-->
126
+<!--  prescriptiondetails-->
127
+<!--} from "@/api/pharmacy"-->
128
+<!--const moment = require('moment')-->
129
+<!--export default {-->
130
+<!--  components: {-->
131
+<!--    detailsPrint,-->
132
+<!--    BreadCrumb,-->
133
+<!--  },-->
134
+<!--  data() {-->
135
+<!--    return {-->
136
+<!--      crumbs: [-->
137
+<!--        { path: false, name: "发药明细" },-->
138
+<!--        { path: "/Pharmacy/DispensingDetails", name: "发药明细" },-->
139
+<!--      ],-->
140
+<!--      keyword: "",-->
141
+<!--      tableList: [{}],-->
142
+<!--      signAndWeighBoxPatients: "sign-and-weigh-box-patients",-->
143
+<!--      start_time:moment(new Date()).add('year',0).format("YYYY-MM-DD"),-->
144
+<!--      end_time:moment(new Date()).add('year',0).format("YYYY-MM-DD"),-->
145
+<!--      prescriptionList:[],//处方-->
146
+<!--      stat_order:[],//临时医嘱-->
147
+<!--      total: 0,-->
148
+<!--      page: 1,-->
149
+<!--      limit: 10,-->
150
+<!--    };-->
151
+<!--  },-->
152
+<!--  created() {-->
153
+<!--    this.init();-->
154
+<!--    this.query();-->
155
+<!--  },-->
156
+<!--  methods: {-->
157
+<!--    init(){-->
158
+<!--      this.page = 1;-->
159
+<!--      this.limit = 10;-->
160
+<!--      this.keyword = "";-->
161
+<!--    },-->
162
+<!--    query(){-->
163
+<!--      var params = {-->
164
+<!--        keyword: this.keyword,-->
165
+<!--        start_time: this.start_time,-->
166
+<!--        end_time: this.end_time,-->
167
+<!--        page: 1,-->
168
+<!--        limit: this.limit,-->
169
+<!--      }-->
170
+<!--      dispensingdetails(params).then((res) => {-->
171
+<!--        if (res.data.state == 1){-->
172
+<!--          this.tableList = res.data.data.list;-->
173
+<!--          this.total = res.data.data.total;-->
174
+<!--        }-->
175
+<!--      })-->
176
+<!--    },-->
177
+<!--    search(){-->
178
+<!--      console.log("this.start_time",this.start_time)-->
179
+<!--      console.log("this.end_time",this.end_time)-->
180
+<!--      var params = {-->
181
+<!--        keyword: this.keyword,-->
182
+<!--        start_time: this.start_time,-->
183
+<!--        end_time: this.end_time,-->
184
+<!--        page: this.page,-->
185
+<!--        limit: this.limit,-->
186
+<!--      }-->
187
+<!--      dispensingdetails(params).then((res) => {-->
188
+<!--        if (res.data.state == 1){-->
189
+<!--          this.tableList = res.data.data.list;-->
190
+<!--        }-->
191
+<!--      })-->
192
+<!--    },-->
121 193
 
122
-  methods: {
123
-    // 查看
124
-    views() {
125
-      this.$refs.detailsprint.show();
126
-    },
127
-  },
128
-  created() {},
129
-};
130
-</script>
194
+<!--    // 查看-->
195
+<!--    views(data) {-->
196
+<!--      console.log("吱吱吱",data)-->
197
+<!--      this.$refs.detailsprint.show();-->
198
+<!--      this.$refs.detailsprint.drugdetails(data);-->
199
+<!--    },-->
200
+<!--    // 页表操作-->
201
+<!--    handleSizeChange(val) {-->
202
+<!--      this.limit = val;-->
203
+<!--      this.search();-->
204
+<!--    },-->
205
+<!--    handleCurrentChange(val) {-->
206
+<!--      this.page = val;-->
207
+<!--      this.search();-->
208
+<!--    },-->
209
+<!--  },-->
210
+<!--};-->
211
+<!--</script>-->
131 212
 
132
-<style rel="stylesheet/css" lang="scss" scoped>
133
-</style>
213
+<!--<style rel="stylesheet/css" lang="scss" scoped>-->
214
+<!--</style>-->

+ 19 - 8
src/xt_pages/Pharmacy/DrugDispensing.vue Bestand weergeven

@@ -1,4 +1,4 @@
1
-<template>
1
+<template><!--药品发药页面-->
2 2
   <div class="main-contain new-main-contain">
3 3
     <div class="position">
4 4
       <!--      <bread-crumb :crumbs='crumbs'></bread-crumb>-->
@@ -18,6 +18,7 @@
18 18
               format="yyyy-MM-dd"
19 19
               value-format="yyyy-MM-dd"
20 20
               placeholder="选择日期"
21
+              :change="testsss()"
21 22
             >
22 23
             </el-date-picker>
23 24
           </div>
@@ -261,6 +262,11 @@
261 262
 import drugPrint from "./print/drugPrint.vue";
262 263
 import BreadCrumb from "@/xt_pages/components/bread-crumb";
263 264
 import { getTodayAdviceList,getPharmacyBaseDrug,updatePharmacyBaseDrug,SaveSetting,getPharmacyConfig,getUserdDrugList } from "@/api/his/advice";
265
+// import {
266
+//   waitingdrug,
267
+//   issueddrugs,
268
+//   getpharmacycontent
269
+// } from "@/api/pharmacy"
264 270
 const moment = require('moment')
265 271
 export default {
266 272
   components: {
@@ -295,6 +301,13 @@ export default {
295 301
   },
296 302
 
297 303
   methods: {
304
+    testsss(){
305
+      console.log("time",this.start_time);
306
+    },
307
+    //初始化
308
+    init(){
309
+
310
+    },
298 311
      searchAction() {
299 312
       this.getlist();
300 313
     },
@@ -363,14 +376,11 @@ export default {
363 376
         .catch(() => {});
364 377
     },
365 378
 
366
-    handleSelectionChange(val) {
367
-      this.multipleSelection = val;
368
-    },
369 379
     getlist(){
370 380
       var params = {
371 381
         start_time:this.start_time,
372 382
         keywords:this.keywords,
373
-      }  
383
+      }
374 384
       getTodayAdviceList(params).then(response=>{
375 385
          if(response.data.state == 1){
376 386
            var list =  response.data.data.list
@@ -379,8 +389,8 @@ export default {
379 389
            var doctorlist = response.data.data.doctorlist
380 390
            this.doctorList = doctorlist
381 391
          }
382
-      }) 
383
-    }, 
392
+      })
393
+    },
384 394
    getWarehoseInfo(arr, max_unit, min_unit, min_number) {
385 395
       var total = 0;
386 396
       var max_str = "";
@@ -489,6 +499,7 @@ export default {
489 499
     }
490 500
   },
491 501
   created() {
502
+    this.init();
492 503
     this.getlist()
493 504
   },
494 505
 };
@@ -530,4 +541,4 @@ export default {
530 541
     justify-content: flex-end;
531 542
   }
532 543
 }
533
-</style>
544
+</style>

+ 10 - 12
src/xt_pages/data/components/addInspection.vue Bestand weergeven

@@ -155,7 +155,7 @@
155 155
             <template slot-scope="scope">
156 156
               <div v-if="scope.row.type == 2">{{ scope.row.unit }}</div>
157 157
               <div v-if="scope.row.type == 3">
158
-                {{ getUnit(scope.row.unit) }}
158
+               {{ scope.row.unit }}
159 159
               </div>
160 160
             </template>
161 161
           </el-table-column>
@@ -251,7 +251,6 @@ export default {
251 251
       }
252 252
     },
253 253
     changeProject(val) {
254
-      console.log("i23232323323",val.id)
255 254
       this.form.number = 1;
256 255
     },
257 256
     querySearch(queryString, cb) {
@@ -272,7 +271,7 @@ export default {
272 271
       };
273 272
     },
274 273
     handleSelect(val) {
275
-      console.log("val3223322323232323",val)
274
+     
276 275
       this.project_name = val.project_name;
277 276
       this.form.project_detail = val.id;
278 277
     },
@@ -314,7 +313,7 @@ export default {
314 313
         saveTeam(data, params).then((response) => {
315 314
           if (response.data.state == 1) {
316 315
             var projectTeam = response.data.data.projectTeam;
317
-            // console.log('projectTeam', projectTeam)
316
+           
318 317
             this.$message.success("保存成功");
319 318
             this.visible = false;
320 319
             (this.form.project_team = ""),
@@ -341,12 +340,12 @@ export default {
341 340
         if (response.data.state == 1) {
342 341
           var projectList = response.data.data.projectList;
343 342
           var goodInfos = response.data.data.good_info;
344
-
343
+    
345 344
           for (let i = 0; i < projectList.length; i++) {
346 345
             let obj = {
347 346
               id: projectList[i].id,
348 347
               statistical_classification:
349
-                projectList[i].statistical_classification,
348
+              projectList[i].statistical_classification,
350 349
               number: "1",
351 350
               project_name: projectList[i].project_name,
352 351
               unit: projectList[i].unit,
@@ -363,12 +362,10 @@ export default {
363 362
           for (let i = 0; i < goodInfos.length; i++) {
364 363
             let obj = {
365 364
               id: goodInfos[i].id,
366
-              statistical_classification:
367
-                goodInfos[i].statistical_classification,
365
+              statistical_classification:goodInfos[i].statistical_classification,
368 366
               number: "1",
369
-              project_name:
370
-                goodInfos[i].good_name + " " + goodInfos[i].specification_name,
371
-              unit: goodInfos[i].good_unit,
367
+              project_name:goodInfos[i].good_name + " " + goodInfos[i].specification_name,
368
+              unit: goodInfos[i].packing_unit,
372 369
               price: goodInfos[i].retail_price,
373 370
               type: 3,
374 371
               new_id: Math.floor(
@@ -379,7 +376,7 @@ export default {
379 376
             this.projectList.push(obj);
380 377
           }
381 378
 
382
-          console.log("项目2323332", this.projectList);
379
+         
383 380
         }
384 381
       });
385 382
     },
@@ -416,6 +413,7 @@ export default {
416 413
             }
417 414
           }
418 415
         }
416
+        console.log("project_232332323232323232",this.projectList)
419 417
         for (let i = 0; i < this.projectList.length; i++) {
420 418
           if (this.form.project_detail == this.projectList[i].new_id) {
421 419
             this.projectList[i].number = this.form.number

+ 4 - 4
src/xt_pages/data/components/editInspection.vue Bestand weergeven

@@ -80,7 +80,7 @@
80 80
                     <el-table-column align="center" prop="name" label="单位" width="120">
81 81
                         <template slot-scope="scope">
82 82
                             <div v-if="scope.row.type == 2">{{scope.row.unit}}</div>
83
-                            <div v-if="scope.row.type == 3">{{getUnit(scope.row.unit)}}</div>
83
+                            <div v-if="scope.row.type == 3">{{scope.row.unit}}</div>
84 84
                         </template>
85 85
                     </el-table-column>
86 86
                     <el-table-column align="center" prop="name" label="单价" width="120">
@@ -209,7 +209,7 @@
209 209
          
210 210
             var projectList = response.data.data.projectList
211 211
             var goodInfos = response.data.data.good_info
212
-
212
+            console.log("332323232323232",goodInfos)
213 213
             for (let i = 0; i < projectList.length; i++) {
214 214
               let obj = {
215 215
                 id: projectList[i].id,
@@ -233,7 +233,7 @@
233 233
                 statistical_classification: goodInfos[i].statistical_classification,
234 234
                 number: '1',
235 235
                 project_name:goodInfos[i].good_name + " " + goodInfos[i].specification_name,
236
-                unit: goodInfos[i].good_unit,
236
+                unit: goodInfos[i].packing_unit,
237 237
                 price: goodInfos[i].retail_price,
238 238
                 type: 3,
239 239
                 m_id: 0,
@@ -274,7 +274,7 @@
274 274
 
275 275
               } else {
276 276
                 obj['project_name'] = hisList[i].good_info.good_name
277
-                obj['unit'] = hisList[i].good_info.good_unit
277
+                obj['unit'] = hisList[i].good_info.packing_unit
278 278
                 obj['price'] = hisList[i].good_info.retail_price
279 279
               }
280 280
               this.tableData.push(obj)

+ 1 - 0
src/xt_pages/data/components/templateTable.vue Bestand weergeven

@@ -299,6 +299,7 @@ export default {
299 299
       })
300 300
         .then(() => {
301 301
           const tempData = Object.assign({}, this.temp);
302
+          console.log("templdatae232333233",tempData)
302 303
           deleteChildConfig(tempData).then(response => {
303 304
             if (!response.data) {
304 305
               // 由于mockjs 不支持自定义状态码只能这样hack

+ 1 - 1
src/xt_pages/dialysis/batch_print/batch_print_order_four.vue Bestand weergeven

@@ -435,7 +435,7 @@
435 435
                       <td width="60">静脉压<br/>mmHg</td>
436 436
                       <td width="60">跨膜压<br/>mmHg</td>
437 437
                       <td width="60">KT/V</td>
438
-                      <td width="200">病情特殊处理<br/>及专科护理措施录</td>
438
+                      <td width="200">病情特殊处理<br/>及专科护理措施录</td>
439 439
                       <td width="80">护士签名</td>
440 440
                     </tr>
441 441
                     <!-- </thead>

Diff onderdrukt omdat het te groot bestand
+ 1062 - 495
src/xt_pages/dialysis/batch_print/batch_print_order_six.vue


+ 1 - 1
src/xt_pages/dialysis/batch_print/batch_print_order_three.vue Bestand weergeven

@@ -910,7 +910,7 @@
910 910
                           <td width="60">跨膜压<br />mmHg</td>
911 911
                           <td width="60">电导度<br />mS/m</td>
912 912
                           <td width="200">
913
-                            病情特殊处理<br />及专科护理措施
913
+                            病情特殊处理<br />及专科护理措施
914 914
                           </td>
915 915
                           <td width="80">护士签名</td>
916 916
                         </tr>

+ 15 - 15
src/xt_pages/dialysis/bloodPresssWatch.vue Bestand weergeven

@@ -29,7 +29,7 @@
29 29
             @click="batchPrintActionOne"
30 30
             type="primary"
31 31
             style=""
32
-            >打印录单</el-button
32
+            >打印录单</el-button
33 33
           >
34 34
           <el-button
35 35
             :loading="loading"
@@ -78,7 +78,7 @@
78 78
             @click="batchPrintActionOne"
79 79
             type="primary"
80 80
             style=""
81
-            >打印录单</el-button
81
+            >打印录单</el-button
82 82
           >
83 83
           <el-button
84 84
             :loading="loading"
@@ -197,7 +197,7 @@
197 197
             @click="batchPrintActionOne"
198 198
             type="primary"
199 199
             style=""
200
-            >打印录单</el-button
200
+            >打印录单</el-button
201 201
           >
202 202
           <el-button
203 203
             :loading="loading"
@@ -647,7 +647,7 @@ export default {
647 647
       },
648 648
       selecting_schs: [],
649 649
       partitionArr: [],
650
-  
650
+
651 651
     };
652 652
   },
653 653
   created() {
@@ -696,7 +696,7 @@ export default {
696 696
       this.getSchedualPatientList();
697 697
       this.getTemplateInfo();
698 698
     }
699
-    
699
+
700 700
     // this.template_id = this.$store.getters.xt_user.template_info.template_id;
701 701
   },
702 702
   methods: {
@@ -742,7 +742,7 @@ export default {
742 742
       this.getSchedualPatientList()
743 743
     },
744 744
     changeEndTime(){
745
-      
745
+
746 746
       this.getSchedualPatientList()
747 747
     },
748 748
     getAllZone: function() {
@@ -766,7 +766,7 @@ export default {
766 766
       console.log("params332322332323232",this.listQuery)
767 767
       this.SchedualPatientsTableData = [];
768 768
       getSchedualPatient(this.listQuery).then(response => {
769
-      
769
+
770 770
         if (response.data.state == 0) {
771 771
           this.loading = false;
772 772
           this.$message.error(response.data.msg);
@@ -783,7 +783,7 @@ export default {
783 783
               if(response.data.data.schedule[i].dialysis_order!=null){
784 784
                 SchedualPatientsTable["start_time"] = response.data.data.schedule[i].dialysis_order.start_time ? parseTime(response.data.data.schedule[i].dialysis_order.start_time,"{h}:{i}") : '';
785 785
               }
786
-          
786
+
787 787
               SchedualPatientsTable["sch_id"] = response.data.data.schedule[i].id;
788 788
               SchedualPatientsTable["sch_time_int"] = response.data.data.schedule[i].schedule_date;
789 789
               SchedualPatientsTable["sch_time"] = parseTime(response.data.data.schedule[i].schedule_date,"{y}-{m}-{d}");
@@ -795,16 +795,16 @@ export default {
795 795
                  SchedualPatientsTable["source"] = response.data.data.schedule[i].patient.source;
796 796
                 SchedualPatientsTable["patient_id"] = response.data.data.schedule[i].patient_id;
797 797
               }
798
-             
798
+
799 799
               SchedualPatientsTable["number"] =  response.data.data.schedule[i].device_number.number;
800
-               
800
+
801 801
               if(response.data.data.schedule[i].treatment_mode!=null){
802 802
                 SchedualPatientsTable["mode_name"] = response.data.data.schedule[i].treatment_mode.name;
803 803
               }
804 804
               if(response.data.data.schedule[i].prescription!=null){
805
-                SchedualPatientsTable["target_ultrafiltration"] = response.data.data.schedule[i].prescription.target_ultrafiltration;  
805
+                SchedualPatientsTable["target_ultrafiltration"] = response.data.data.schedule[i].prescription.target_ultrafiltration;
806 806
               }
807
-             
807
+
808 808
               if (response.data.data.schedule[i].assessment_before_dislysis != null) {
809 809
                 SchedualPatientsTable["dialysis_before_weight"] =response.data.data.schedule[i].assessment_before_dislysis.weight_before;
810 810
               }
@@ -820,17 +820,17 @@ export default {
820 820
                 SchedualPatientsTable.bp.push(bp);
821 821
                }
822 822
               }
823
-             
823
+
824 824
 
825 825
               this.SchedualPatientsTableData.push(SchedualPatientsTable);
826
-             
826
+
827 827
             }
828 828
           }
829 829
         }
830 830
       });
831 831
     },
832 832
     getValue: function(val) {
833
-      
833
+
834 834
       if (val != undefined) {
835 835
         var str = val.value.split("/")
836 836
         return str[0];

+ 2 - 2
src/xt_pages/dialysis/details/DialysisPrescription.vue Bestand weergeven

@@ -111,8 +111,8 @@
111 111
           <label>目标超滤量 : </label>
112 112
           <span class="content">{{ target_ultrafiltration != "0" ? target_ultrafiltration : ""}}</span>
113 113
           
114
-          <span v-if="this.$store.getters.xt_user.template_info.template_id != 17 && this.$store.getters.xt_user.template_info.template_id != 9 && this.$store.getters.xt_user.template_info.template_id != 20 && this.$store.getters.xt_user.template_info.template_id != 21 && this.$store.getters.xt_user.template_info.template_id != 22 && this.$store.getters.xt_user.template_info.template_id != 23 && this.$store.getters.xt_user.template_info.template_id != 24 && this.$store.getters.xt_user.template_info.template_id != 26 && this.$store.getters.xt_user.template_info.template_id != 28 && this.$store.getters.xt_user.template_info.template_id != 27 && this.$store.getters.xt_user.template_info.template_id != 29 && this.$store.getters.xt_user.template_info.template_id != 30 && this.$store.getters.xt_user.template_info.template_id != 31 && this.$store.getters.xt_user.template_info.template_id != 32 && this.$store.getters.xt_user.template_info.template_id != 34 && this.$store.getters.xt_user.template_info.template_id != 38 && this.$store.getters.xt_user.template_info.template_id != 40 && this.$store.getters.xt_user.template_info.template_id != 43 && this.$store.getters.xt_user.template_info.template_id != 45  && this.$store.getters.xt_user.template_info.template_id != 46  && this.$store.getters.xt_user.template_info.template_id != 48 && this.$store.getters.xt_user.template_info.org_id != 9555"  class="unit">{{ target_ultrafiltration != "0" ? "L" : "" }}</span>
115
-          <span v-if="this.$store.getters.xt_user.template_info.template_id == 17 || this.$store.getters.xt_user.template_info.template_id == 9 || this.$store.getters.xt_user.template_info.template_id == 20 || this.$store.getters.xt_user.template_info.template_id == 21 || this.$store.getters.xt_user.template_info.template_id == 22 || this.$store.getters.xt_user.template_info.template_id == 23 || this.$store.getters.xt_user.template_info.template_id == 24 || this.$store.getters.xt_user.template_info.template_id == 26 || this.$store.getters.xt_user.template_info.template_id == 28 || this.$store.getters.xt_user.template_info.template_id == 27 || this.$store.getters.xt_user.template_info.template_id == 29 || this.$store.getters.xt_user.template_info.template_id == 30 || this.$store.getters.xt_user.template_info.template_id == 31 || this.$store.getters.xt_user.template_info.template_id == 32 || this.$store.getters.xt_user.template_info.template_id == 34 || this.$store.getters.xt_user.template_info.template_id == 38 || this.$store.getters.xt_user.template_info.template_id == 40 || this.$store.getters.xt_user.template_info.template_id == 43 || this.$store.getters.xt_user.template_info.template_id == 45 || this.$store.getters.xt_user.template_info.template_id == 46  || this.$store.getters.xt_user.template_info.template_id == 48 || this.$store.getters.xt_user.template_info.org_id == 9555" class="unit">{{ target_ultrafiltration != "0" ? "ml" : "" }}</span>
114
+          <span v-if="this.$store.getters.xt_user.template_info.template_id != 17 && this.$store.getters.xt_user.template_info.template_id != 9 && this.$store.getters.xt_user.template_info.template_id != 20 && this.$store.getters.xt_user.template_info.template_id != 21 && this.$store.getters.xt_user.template_info.template_id != 22 && this.$store.getters.xt_user.template_info.template_id != 23 && this.$store.getters.xt_user.template_info.template_id != 24 && this.$store.getters.xt_user.template_info.template_id != 26 && this.$store.getters.xt_user.template_info.template_id != 28 && this.$store.getters.xt_user.template_info.template_id != 27 && this.$store.getters.xt_user.template_info.template_id != 29 && this.$store.getters.xt_user.template_info.template_id != 30 && this.$store.getters.xt_user.template_info.template_id != 31 && this.$store.getters.xt_user.template_info.template_id != 32 && this.$store.getters.xt_user.template_info.template_id != 34 && this.$store.getters.xt_user.template_info.template_id != 38 && this.$store.getters.xt_user.template_info.template_id != 40 && this.$store.getters.xt_user.template_info.template_id != 43 && this.$store.getters.xt_user.template_info.template_id != 45  && this.$store.getters.xt_user.template_info.template_id != 46  && this.$store.getters.xt_user.template_info.template_id != 48 && this.$store.getters.xt_user.template_info.org_id != 9555  && this.$store.getters.xt_user.template_info.org_id != 10345  && this.$store.getters.xt_user.template_info.org_id != 10346  && this.$store.getters.xt_user.template_info.org_id != 10249"  class="unit">{{ target_ultrafiltration != "0" ? "L" : "" }}</span>
115
+          <span v-if="this.$store.getters.xt_user.template_info.template_id == 17 || this.$store.getters.xt_user.template_info.template_id == 9 || this.$store.getters.xt_user.template_info.template_id == 20 || this.$store.getters.xt_user.template_info.template_id == 21 || this.$store.getters.xt_user.template_info.template_id == 22 || this.$store.getters.xt_user.template_info.template_id == 23 || this.$store.getters.xt_user.template_info.template_id == 24 || this.$store.getters.xt_user.template_info.template_id == 26 || this.$store.getters.xt_user.template_info.template_id == 28 || this.$store.getters.xt_user.template_info.template_id == 27 || this.$store.getters.xt_user.template_info.template_id == 29 || this.$store.getters.xt_user.template_info.template_id == 30 || this.$store.getters.xt_user.template_info.template_id == 31 || this.$store.getters.xt_user.template_info.template_id == 32 || this.$store.getters.xt_user.template_info.template_id == 34 || this.$store.getters.xt_user.template_info.template_id == 38 || this.$store.getters.xt_user.template_info.template_id == 40 || this.$store.getters.xt_user.template_info.template_id == 43 || this.$store.getters.xt_user.template_info.template_id == 45 || this.$store.getters.xt_user.template_info.template_id == 46  || this.$store.getters.xt_user.template_info.template_id == 48 || this.$store.getters.xt_user.template_info.org_id == 9555 || this.$store.getters.xt_user.template_info.org_id == 10345  || this.$store.getters.xt_user.template_info.org_id == 10346  || this.$store.getters.xt_user.template_info.org_id == 10249" class="unit">{{ target_ultrafiltration != "0" ? "ml" : "" }}</span>
116 116
         </li>
117 117
 
118 118
          <li v-if="isShow('目标超滤量') && this.$store.getters.xt_user.template_info.org_id == 10290">

+ 16 - 9
src/xt_pages/dialysis/details/dialog/DoctorAdviceDialog.vue Bestand weergeven

@@ -223,8 +223,10 @@
223 223
         :cell-class-name="adviceNameShow"
224 224
         :modal-append-to-body="false"
225 225
         highlight-current-row
226
+        @selection-change="handleSelectionChange"
226 227
       >
227
-        <el-table-column prop="date" label="开嘱医生" align="center" min-width="26px">
228
+        <el-table-column type="selection"  width="55"></el-table-column>
229
+       <el-table-column prop="date" label="开嘱医生" align="center" min-width="26px">
228 230
           <template slot-scope="scope">
229 231
             <span>{{ getXuserName(scope.row.advice_doctor) }}</span>
230 232
           </template>
@@ -283,6 +285,7 @@
283 285
             <span>
284 286
               {{getXuserName(scope.row.execution_staff)}}
285 287
             </span>
288
+
286 289
           </template>
287 290
         </el-table-column>
288 291
         <el-table-column
@@ -296,7 +299,8 @@
296 299
             <span>
297 300
               {{getXuserName(scope.row.checker)}}
298 301
             </span>
299
-           
302
+
303
+
300 304
           </template>
301 305
         </el-table-column>
302 306
       </el-table>
@@ -319,8 +323,9 @@
319 323
         :cell-class-name="adviceNameShow"
320 324
         :modal-append-to-body="false"
321 325
         highlight-current-row
326
+        @selection-change="handleSelectionChange"
322 327
       >
323
-
328
+        <el-table-column type="selection"  width="55"></el-table-column>
324 329
         <el-table-column prop="date" label="开嘱医生" align="center" min-width="26px">
325 330
           <template slot-scope="scope">
326 331
             <span>{{ getXuserName(scope.row.advice_doctor) }}</span>
@@ -793,6 +798,10 @@
793 798
 
794 799
     },
795 800
     methods: {
801
+      handleSelectionChange(){
802
+
803
+      },
804
+
796 805
       //调试
797 806
       lili(index,row){
798 807
         // console.log("==index==",index)
@@ -1335,7 +1344,7 @@
1335 1344
               this.currentRow = null
1336 1345
               this.setCurrent()
1337 1346
               this.hideForm()
1338
-            
1347
+
1339 1348
 
1340 1349
               if (this.form.parent_id > 0) {
1341 1350
                 var spliceIndex = -1
@@ -1348,7 +1357,7 @@
1348 1357
                     break
1349 1358
                   }
1350 1359
                 }
1351
-               
1360
+
1352 1361
                 if (spliceIndex > -1) {
1353 1362
                   spliceIndex += 1
1354 1363
                   if (spliceIndex === this.doctor_advices.length) {
@@ -1361,7 +1370,7 @@
1361 1370
                     }
1362 1371
                   }
1363 1372
 
1364
-                 
1373
+
1365 1374
                 }
1366 1375
               } else {
1367 1376
                 this.doctor_advices.unshift(response.data.data.advice)
@@ -1635,9 +1644,7 @@
1635 1644
           this.$message.error('你没有执行医嘱的权限')
1636 1645
           return false
1637 1646
         }
1638
-
1639
-        console.log("王哈",this.currentRow)
1640
-        if(this.org_id == 9671 || this.org_id == 9675 || this.org_id ==10340 ){
1647
+        if(this.org_id == 9675 || this.org_id ==10340 ){
1641 1648
            if(this.currentRow.checker == 0){
1642 1649
               this.$message.error("请先核对医嘱")
1643 1650
               return

+ 2 - 1
src/xt_pages/dialysis/details/dialog/assessmentBeforeDislysisDialog.vue Bestand weergeven

@@ -1329,7 +1329,8 @@
1329 1329
       console.log("针眼",this.pinholings)
1330 1330
       this.catheter_maintenancelist = getDataConfig('hemodialysis','catheter_maintenance')
1331 1331
       console.log("导管维护",this.catheter_maintenancelist)
1332
-     
1332
+       
1333
+      console.log("predialysis_evaluation2332323323222323",this.predialysis_evaluation)
1333 1334
       // this.weight_adjust.weight = this.dry_weight.dry_weight
1334 1335
 
1335 1336
       // if(this.predialysis_evaluation.id == 0){

+ 34 - 32
src/xt_pages/dialysis/details/dialog/dialysisPrescriptionDialog.vue Bestand weergeven

@@ -67,7 +67,7 @@
67 67
 
68 68
 
69 69
                     <el-col :span="8"
70
-                            v-if="isShows('预冲量') && (this.$store.getters.xt_user.template_info.template_id == 17 || this.$store.getters.xt_user.template_info.template_id == 9 || this.$store.getters.xt_user.template_info.template_id == 20 || this.$store.getters.xt_user.template_info.template_id == 21 || this.$store.getters.xt_user.template_info.template_id == 22 || this.$store.getters.xt_user.template_info.template_id == 23 || this.$store.getters.xt_user.template_info.template_id == 36)">
70
+                            v-if="isShows('预冲量') && (this.$store.getters.xt_user.template_info.template_id == 17 || this.$store.getters.xt_user.template_info.template_id == 9 || this.$store.getters.xt_user.template_info.template_id == 20 || this.$store.getters.xt_user.template_info.template_id == 21 || this.$store.getters.xt_user.template_info.template_id == 22 || this.$store.getters.xt_user.template_info.template_id == 23 || this.$store.getters.xt_user.template_info.template_id == 36 ||  this.$store.getters.xt_user.template_info.org_id == 10345)">
71 71
                         <el-form-item label="预冲量(ml):">
72 72
                             <el-input
73 73
                                     type="number"
@@ -77,7 +77,7 @@
77 77
                     </el-col>
78 78
 
79 79
                     <el-col :span="8"
80
-                            v-if="isShows('预冲量')  && this.$store.getters.xt_user.template_info.template_id != 17 && this.$store.getters.xt_user.template_info.template_id != 9 && this.$store.getters.xt_user.template_info.template_id != 20 && this.$store.getters.xt_user.template_info.template_id != 21 && this.$store.getters.xt_user.template_info.template_id != 22 && this.$store.getters.xt_user.template_info.template_id !=23 && this.$store.getters.xt_user.template_info.template_id !=36">
80
+                            v-if="isShows('预冲量')  && this.$store.getters.xt_user.template_info.template_id != 17 && this.$store.getters.xt_user.template_info.template_id != 9 && this.$store.getters.xt_user.template_info.template_id != 20 && this.$store.getters.xt_user.template_info.template_id != 21 && this.$store.getters.xt_user.template_info.template_id != 22 && this.$store.getters.xt_user.template_info.template_id !=23 && this.$store.getters.xt_user.template_info.template_id !=36 && this.$store.getters.xt_user.template_info.org_id!=10345">
81 81
                         <el-form-item label="预冲量(L):">
82 82
                             <el-input
83 83
                                     type="number"
@@ -87,7 +87,7 @@
87 87
                     </el-col>
88 88
 
89 89
                     <el-col :span="8"
90
-                            v-if="isShows('目标超滤量') && (this.$store.getters.xt_user.template_info.template_id == 17 || this.$store.getters.xt_user.template_info.template_id == 9 || this.$store.getters.xt_user.template_info.template_id == 20 || this.$store.getters.xt_user.template_info.template_id == 21 || this.$store.getters.xt_user.template_info.template_id == 22  || this.$store.getters.xt_user.template_info.template_id == 23 || this.$store.getters.xt_user.template_info.template_id == 24 || this.$store.getters.xt_user.template_info.template_id == 26 || this.$store.getters.xt_user.template_info.template_id == 28  || this.$store.getters.xt_user.template_info.template_id == 27 || this.$store.getters.xt_user.template_info.template_id == 29 || this.$store.getters.xt_user.template_info.template_id == 30 || this.$store.getters.xt_user.template_info.template_id == 31 || this.$store.getters.xt_user.template_info.template_id == 32 || this.$store.getters.xt_user.template_info.template_id == 34 || this.$store.getters.xt_user.template_info.template_id == 38 ||  this.$store.getters.xt_user.template_info.template_id == 40 ||  this.$store.getters.xt_user.template_info.template_id == 43 ||  this.$store.getters.xt_user.template_info.template_id == 45  ||  this.$store.getters.xt_user.template_info.template_id == 46 ||  this.$store.getters.xt_user.template_info.template_id == 48 || this.$store.getters.xt_user.template_info.org_id == 9555 )">
90
+                            v-if="isShows('目标超滤量') && (this.$store.getters.xt_user.template_info.template_id == 17 || this.$store.getters.xt_user.template_info.template_id == 9 || this.$store.getters.xt_user.template_info.template_id == 20 || this.$store.getters.xt_user.template_info.template_id == 21 || this.$store.getters.xt_user.template_info.template_id == 22  || this.$store.getters.xt_user.template_info.template_id == 23 || this.$store.getters.xt_user.template_info.template_id == 24 || this.$store.getters.xt_user.template_info.template_id == 26 || this.$store.getters.xt_user.template_info.template_id == 28  || this.$store.getters.xt_user.template_info.template_id == 27 || this.$store.getters.xt_user.template_info.template_id == 29 || this.$store.getters.xt_user.template_info.template_id == 30 || this.$store.getters.xt_user.template_info.template_id == 31 || this.$store.getters.xt_user.template_info.template_id == 32 || this.$store.getters.xt_user.template_info.template_id == 34 || this.$store.getters.xt_user.template_info.template_id == 38 ||  this.$store.getters.xt_user.template_info.template_id == 40 ||  this.$store.getters.xt_user.template_info.template_id == 43 ||  this.$store.getters.xt_user.template_info.template_id == 45  ||  this.$store.getters.xt_user.template_info.template_id == 46 ||  this.$store.getters.xt_user.template_info.template_id == 48 || this.$store.getters.xt_user.template_info.org_id == 9555 || this.$store.getters.xt_user.template_info.org_id == 10345 || this.$store.getters.xt_user.template_info.org_id == 10346 || this.$store.getters.xt_user.template_info.org_id == 10249)">
91 91
                         <el-form-item label="目标超滤量(ml):">
92 92
                             <el-input
93 93
                                     type="number"
@@ -98,7 +98,7 @@
98 98
 
99 99
 
100 100
                     <el-col :span="8"
101
-                            v-if="isShows('目标超滤量')  && this.$store.getters.xt_user.template_info.template_id != 17 && this.$store.getters.xt_user.template_info.template_id != 9 && this.$store.getters.xt_user.template_info.template_id != 20 && this.$store.getters.xt_user.template_info.template_id != 21 && this.$store.getters.xt_user.template_info.template_id != 22 && this.$store.getters.xt_user.template_info.template_id != 23 && this.$store.getters.xt_user.template_info.template_id != 24 && this.$store.getters.xt_user.template_info.template_id != 26 && this.$store.getters.xt_user.template_info.template_id != 28 && this.$store.getters.xt_user.template_info.template_id != 27 && this.$store.getters.xt_user.template_info.template_id != 29 && this.$store.getters.xt_user.template_info.template_id != 30 && this.$store.getters.xt_user.template_info.template_id != 31 && this.$store.getters.xt_user.template_info.template_id != 32 && this.$store.getters.xt_user.template_info.template_id != 34 && this.$store.getters.xt_user.template_info.template_id != 38 &&  this.$store.getters.xt_user.template_info.template_id != 40 &&  this.$store.getters.xt_user.template_info.template_id != 43 &&  this.$store.getters.xt_user.template_info.template_id != 45 &&  this.$store.getters.xt_user.template_info.template_id != 46  &&  this.$store.getters.xt_user.template_info.template_id != 48 && this.$store.getters.xt_user.template_info.org_id != 9555 ">
101
+                            v-if="isShows('目标超滤量')  && this.$store.getters.xt_user.template_info.template_id != 17 && this.$store.getters.xt_user.template_info.template_id != 9 && this.$store.getters.xt_user.template_info.template_id != 20 && this.$store.getters.xt_user.template_info.template_id != 21 && this.$store.getters.xt_user.template_info.template_id != 22 && this.$store.getters.xt_user.template_info.template_id != 23 && this.$store.getters.xt_user.template_info.template_id != 24 && this.$store.getters.xt_user.template_info.template_id != 26 && this.$store.getters.xt_user.template_info.template_id != 28 && this.$store.getters.xt_user.template_info.template_id != 27 && this.$store.getters.xt_user.template_info.template_id != 29 && this.$store.getters.xt_user.template_info.template_id != 30 && this.$store.getters.xt_user.template_info.template_id != 31 && this.$store.getters.xt_user.template_info.template_id != 32 && this.$store.getters.xt_user.template_info.template_id != 34 && this.$store.getters.xt_user.template_info.template_id != 38 &&  this.$store.getters.xt_user.template_info.template_id != 40 &&  this.$store.getters.xt_user.template_info.template_id != 43 &&  this.$store.getters.xt_user.template_info.template_id != 45 &&  this.$store.getters.xt_user.template_info.template_id != 46  &&  this.$store.getters.xt_user.template_info.template_id != 48 && this.$store.getters.xt_user.template_info.org_id != 9555 &&  this.$store.getters.xt_user.template_info.org_id != 10345 &&  this.$store.getters.xt_user.template_info.org_id != 10346 && this.$store.getters.xt_user.template_info.org_id != 10249">
102 102
                         <el-form-item label="目标超滤量(L):">
103 103
                             <el-input
104 104
                                     type="number"
@@ -220,7 +220,7 @@
220 220
                                           v-model="dialysisPrescription.no_anticoagulant_shouji"></el-input>
221 221
                             </el-form-item>
222 222
 
223
-                           
223
+
224 224
 
225 225
                           </div>
226 226
 
@@ -246,14 +246,14 @@
246 246
                                 <el-input type="number" disabled v-if="dialysisPrescription.anticoagulant == 1"
247 247
                                           v-model="dialysisPrescription.no_anticoagulant_shouji"></el-input>
248 248
                             </el-form-item>
249
-                          
249
+
250 250
                             <el-form-item v-else :label="'首剂(' + anticoagulant.shouji_unit + ') : '">
251 251
                                 <el-input type="number" v-if="dialysisPrescription.anticoagulant != 1"
252 252
                                           v-model="dialysisPrescription.anticoagulant_shouji"></el-input>
253 253
                                 <el-input type="number" disabled v-if="dialysisPrescription.anticoagulant == 1"
254 254
                                           v-model="dialysisPrescription.no_anticoagulant_shouji"></el-input>
255 255
                             </el-form-item>
256
-                            
256
+
257 257
                         </div>
258 258
 
259 259
                     </el-col>
@@ -369,7 +369,7 @@
369 369
 
370 370
 
371 371
                     <el-col :span="8"
372
-                            v-if="isShows('置换量') && (this.$store.getters.xt_user.template_info.template_id == 20 || this.$store.getters.xt_user.template_info.template_id == 28 || this.$store.getters.xt_user.template_info.template_id == 29 || this.$store.getters.xt_user.template_info.template_id == 46)"
372
+                            v-if="isShows('置换量') && (this.$store.getters.xt_user.template_info.template_id == 20 || this.$store.getters.xt_user.template_info.template_id == 28 || this.$store.getters.xt_user.template_info.template_id == 29 || this.$store.getters.xt_user.template_info.template_id == 46 || this.$store.getters.xt_user.template_info.template_id == 53)"
373 373
                             v-show="zhiShow">
374 374
                         <el-form-item label="置换量(ml):">
375 375
                             <el-input
@@ -379,7 +379,7 @@
379 379
                         </el-form-item>
380 380
                     </el-col>
381 381
                     <el-col :span="8"
382
-                            v-if="isShows('置换量') && this.$store.getters.xt_user.template_info.template_id != 20 && this.$store.getters.xt_user.template_info.template_id != 28 && this.$store.getters.xt_user.template_info.template_id != 29 && this.$store.getters.xt_user.template_info.template_id != 40 && this.$store.getters.xt_user.template_info.template_id != 46"
382
+                            v-if="isShows('置换量') && this.$store.getters.xt_user.template_info.template_id != 20 && this.$store.getters.xt_user.template_info.template_id != 28 && this.$store.getters.xt_user.template_info.template_id != 29 && this.$store.getters.xt_user.template_info.template_id != 40 && this.$store.getters.xt_user.template_info.template_id != 46 && this.$store.getters.xt_user.template_info.template_id != 53"
383 383
                             v-show="zhiShow">
384 384
                         <el-form-item label="置换量(L):">
385 385
                             <el-input
@@ -401,22 +401,24 @@
401 401
 
402 402
                     <el-col
403 403
                             :span="8"
404
-                            v-if="anticoagulant.gaimingcheng != -1 && isShows('钙名称')"
404
+                            v-if="isShows('钙名称')"
405 405
                     >
406 406
                         <el-form-item label="钙名称 : ">
407 407
                             <el-input
408 408
                                     v-model="dialysisPrescription.anticoagulant_gaimingcheng"
409
-                                    :disabled="anticoagulant.gaimingcheng == 1 ? false : true"
410 409
                                     placeholder="钙名称"
411 410
                             ></el-input>
412 411
                         </el-form-item>
413 412
                     </el-col>
413
+                    <el-col
414
+                            :span="8"
415
+                            v-if="isShows('钙剂量')"
416
+                    >
414 417
                     <el-col :span="8" v-if="isShows('钙剂量')" >
415 418
                         <el-form-item label="钙剂量(ml) : ">
416 419
                             <el-input
417 420
                                     type="number"
418 421
                                     v-model="dialysisPrescription.anticoagulant_gaijiliang"
419
-                                    :disabled="anticoagulant.gaijiliang == 1 ? false : true"
420 422
                                     placeholder="钙剂量"
421 423
                             ></el-input>
422 424
                         </el-form-item>
@@ -610,7 +612,7 @@
610 612
                     </el-col>
611 613
 
612 614
                     <el-col :span="8"
613
-                            v-if="isShows('置换液总量') && (this.$store.getters.xt_user.template_info.template_id == 21 || this.$store.getters.xt_user.template_info.template_id == 29 || this.$store.getters.xt_user.template_info.template_id ==24)"
615
+                            v-if="isShows('置换液总量') && ((this.$store.getters.xt_user.template_info.template_id == 21 || this.$store.getters.xt_user.template_info.template_id == 29 || this.$store.getters.xt_user.template_info.template_id ==24 || this.$store.getters.xt_user.template_info.template_id ==53) && this.$store.getters.xt_user.template_info.org_id != 10249)"
614 616
                             v-show="totalShow">
615 617
                         <el-form-item label="置换液总量(ml)">
616 618
                             <el-input
@@ -619,7 +621,7 @@
619 621
                         </el-form-item>
620 622
                     </el-col>
621 623
                     <el-col :span="8"
622
-                            v-if="isShows('置换液总量') && this.$store.getters.xt_user.template_info.template_id != 21 && this.$store.getters.xt_user.template_info.template_id != 29 && this.$store.getters.xt_user.template_info.template_id !=24"
624
+                            v-if="isShows('置换液总量') && (this.$store.getters.xt_user.template_info.template_id != 21 && this.$store.getters.xt_user.template_info.template_id != 29 && this.$store.getters.xt_user.template_info.template_id !=24 && this.$store.getters.xt_user.template_info.template_id !=53) || this.$store.getters.xt_user.template_info.org_id  == 10249"
623 625
                             v-show="totalShow">
624 626
                         <el-form-item label="置换液总量(L)">
625 627
                             <el-input
@@ -1660,7 +1662,7 @@
1660 1662
         this.isVisibility = true
1661 1663
       },
1662 1664
       handleAdviceCommit() {
1663
-       
1665
+
1664 1666
           let results = []
1665 1667
           for (let i = 0; i < this.targetAdvices.length; i++) {
1666 1668
             for (let a = 0; a < this.checkedCities.length; a++) {
@@ -1678,7 +1680,7 @@
1678 1680
           var date = new Date()
1679 1681
           var hour = date.getHours() < 10 ? '0' + date.getHours() : date.getHours()
1680 1682
           var minute = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes()
1681
-         
1683
+
1682 1684
           if (results.length > 0) {
1683 1685
             if(!this.isLoading){
1684 1686
               if (this.is_pre == 1) {
@@ -1689,10 +1691,10 @@
1689 1691
                 }
1690 1692
 
1691 1693
                 var arr = this.dialysisPrescription
1692
-               
1694
+
1693 1695
 
1694 1696
                 const ParamsQuery = arr
1695
-                
1697
+
1696 1698
 
1697 1699
                 ParamsQuery['patient'] = this.patient.id
1698 1700
                 ParamsQuery['record_date'] = this.record_date
@@ -1727,7 +1729,7 @@
1727 1729
                       duration: 2000
1728 1730
                     })
1729 1731
                     var date = new Date()
1730
-                    
1732
+
1731 1733
                     const params = {
1732 1734
                       advices: results,
1733 1735
                       advice_date: this.start_time.split(' ')[0],
@@ -1743,7 +1745,7 @@
1743 1745
                     }else{
1744 1746
                       patient_id = this.$route.query.patient_id
1745 1747
                     }
1746
-                  
1748
+
1747 1749
                     CreateGroupAdvice(patient_id, 0, params).then(
1748 1750
                       rs => {
1749 1751
                         var resp = rs.data
@@ -1773,9 +1775,9 @@
1773 1775
                   return
1774 1776
                 }
1775 1777
                 var arr = this.dialysisPrescription
1776
-                
1778
+
1777 1779
                 const ParamsQuery = arr
1778
-              
1780
+
1779 1781
                 ParamsQuery['patient'] = this.patient.id
1780 1782
                 ParamsQuery['record_date'] = this.record_date
1781 1783
                 ParamsQuery['mode'] = 1
@@ -1938,7 +1940,7 @@
1938 1940
 
1939 1941
           this.isShowRemindAdvice = false
1940 1942
           this.isVisibility = true
1941
-        
1943
+
1942 1944
       },
1943 1945
       handleAdviceCancle() {
1944 1946
         this.isShowRemindAdvice = false
@@ -1948,7 +1950,7 @@
1948 1950
         return uParseTime(val, '{y}-{m}-{d} {h}:{i}')
1949 1951
       },
1950 1952
       show(pre, schedual, last, his_is_open,is_advice_open) {
1951
-        
1953
+
1952 1954
         if (pre != undefined) {
1953 1955
           if (pre.oxygen_uptake == 1) {
1954 1956
             this.oxygenShow = true
@@ -2104,7 +2106,7 @@
2104 2106
         console.log("last2323232323232332",last)
2105 2107
         if (this.predialysis == null || this.predialysis.id == 0) {
2106 2108
           if (last != null) {
2107
-            
2109
+
2108 2110
             this.dialysisPrescription.niprocart = last.niprocart
2109 2111
             this.dialysisPrescription.jms = last.jms
2110 2112
             this.dialysisPrescription.fistula_needle_set = last.fistula_needle_set
@@ -2179,7 +2181,7 @@
2179 2181
           this.dialysisPrescription.anticoagulant_zongliang = ""
2180 2182
           this.dialysisPrescription.anticoagulant_zongliang = parseInt(this.dialysisPrescription.anticoagulant_shouji) +  parseInt(this.dialysisPrescription.anticoagulant_weichi)
2181 2183
         }
2182
-     
2184
+
2183 2185
 
2184 2186
       },
2185 2187
 
@@ -2222,7 +2224,7 @@
2222 2224
               const ParamsQuery = arr
2223 2225
               // console.log('night', ParamsQuery)
2224 2226
               ParamsQuery['patient'] = this.patient.id
2225
-             
2227
+
2226 2228
               ParamsQuery['record_date'] = this.record_date
2227 2229
               ParamsQuery['mode'] = '1'
2228 2230
               ParamsQuery['patient_id'] = this.patient.id
@@ -2318,7 +2320,7 @@
2318 2320
                 ParamsQuery['mode'] = '1'
2319 2321
                 ParamsQuery['patient_id'] = this.patient.id
2320 2322
                 console.log('第三')
2321
-              
2323
+
2322 2324
                 postPrescription(ParamsQuery).then(response => {
2323 2325
                   if (response.data.state == 0) {
2324 2326
                     this.$message.error(response.data.msg)
@@ -2597,7 +2599,7 @@
2597 2599
                   ParamsQuery['mode'] = '1'
2598 2600
                   ParamsQuery['patient_id'] = this.patient.id
2599 2601
                   console.log('第八')
2600
-                  
2602
+
2601 2603
                   postPrescription(ParamsQuery).then(response => {
2602 2604
                     if (response.data.state == 0) {
2603 2605
                       this.$message.error(response.data.msg)
@@ -2637,7 +2639,7 @@
2637 2639
               ParamsQuery['record_date'] = this.record_date
2638 2640
               ParamsQuery['mode'] = '2'
2639 2641
               ParamsQuery['patient_id'] = this.patient.id
2640
-            
2642
+
2641 2643
               if (
2642 2644
                 this.$store.getters.xt_user.user.id !=
2643 2645
                 this.dialysisPrescription.creater
@@ -3190,7 +3192,7 @@
3190 3192
       isShows(name) {
3191 3193
         var filedList = store.getters.xt_user.fileds
3192 3194
         for (let i = 0; i < filedList.length; i++) {
3193
-         
3195
+
3194 3196
           if (filedList[i].module == 1 && filedList[i].filed_name_cn == name && filedList[i].is_show == 1) {
3195 3197
 
3196 3198
             return true
@@ -3570,7 +3572,7 @@
3570 3572
         if (isNaN(this.dialysisPrescription.anticoagulant_zongliang)) {
3571 3573
           this.dialysisPrescription.anticoagulant_zongliang = ''
3572 3574
         }
3573
-       
3575
+
3574 3576
         if(this.$store.getters.xt_user.template_info.template_id == 41 && this.dialysisPrescription.anticoagulant == 2){
3575 3577
          this.dialysisPrescription.anticoagulant_zongliang = ""
3576 3578
          this.dialysisPrescription.anticoagulant_zongliang = parseInt(this.dialysisPrescription.anticoagulant_shouji) +  parseInt(this.dialysisPrescription.anticoagulant_weichi)

+ 18 - 3
src/xt_pages/dialysis/details/dialog/monitor_dialog.vue Bestand weergeven

@@ -231,6 +231,7 @@
231 231
                 template_id == 47 ||
232 232
                 template_id == 48 ||
233 233
                 template_id == 51 ||
234
+                template_id == 53 ||
234 235
                 org_id == 10210 ||
235 236
                 org_id == 9555)
236 237
             "
@@ -282,7 +283,8 @@
282 283
               template_id != 46 &&
283 284
               template_id != 47 &&
284 285
               template_id != 48 &&
285
-               template_id != 51 &&
286
+              template_id != 51 &&
287
+              template_id != 53 &&
286 288
               org_id!= 10210 &&
287 289
               org_id != 9555
288 290
             "
@@ -328,6 +330,7 @@
328 330
                 template_id == 44 ||
329 331
                 template_id == 46 ||
330 332
                 template_id == 48 ||
333
+                template_id == 53 ||
331 334
                 template_id == 47)
332 335
             "
333 336
           >
@@ -370,6 +373,7 @@
370 373
               template_id != 43 &&
371 374
               template_id != 44 &&
372 375
               template_id != 46 &&
376
+              template_id != 53 &&
373 377
               template_id != 48 &&
374 378
               template_id != 47
375 379
             "
@@ -426,6 +430,7 @@
426 430
                 template_id == 26 ||
427 431
                 template_id == 29 ||
428 432
                 template_id == 48 ||
433
+                template_id == 53 ||
429 434
                 template_id == 47)
430 435
             "
431 436
           >
@@ -448,6 +453,7 @@
448 453
               template_id != 26 &&
449 454
               template_id != 29 &&
450 455
               template_id != 48 &&
456
+              template_id != 53 &&
451 457
               template_id != 47
452 458
             "
453 459
           >
@@ -487,6 +493,7 @@
487 493
                 template_id == 20 ||
488 494
                 template_id == 26 ||
489 495
                 template_id == 29 ||
496
+                template_id == 53 ||
490 497
                 template_id == 48)
491 498
             "
492 499
           >
@@ -513,6 +520,7 @@
513 520
               template_id != 26 &&
514 521
               template_id != 29 &&
515 522
               template_id != 43 &&
523
+              template_id != 53 &&
516 524
               template_id != 48
517 525
             "
518 526
           >
@@ -986,6 +994,7 @@
986 994
                 template_id == 44 ||
987 995
                 template_id == 46 ||
988 996
                 template_id == 48 ||
997
+                template_id == 53 ||
989 998
                 template_id == 47)
990 999
             "
991 1000
           >
@@ -1022,6 +1031,7 @@
1022 1031
               template_id != 44 &&
1023 1032
               template_id != 46 &&
1024 1033
               template_id != 48 &&
1034
+              template_id != 53 &&
1025 1035
               template_id != 47
1026 1036
             "
1027 1037
           >
@@ -1065,6 +1075,7 @@
1065 1075
                 template_id == 47 ||
1066 1076
                 template_id == 48 ||
1067 1077
                 template_id == 51 ||
1078
+                template_id == 53 ||
1068 1079
                 org_id == 10210 ||
1069 1080
                 org_id == 9555)
1070 1081
             "
@@ -1109,7 +1120,7 @@
1109 1120
               template_id != 47 &&
1110 1121
               template_id != 51 &&
1111 1122
               template_id == 48 &&
1112
-             
1123
+              template_id == 53 &&
1113 1124
               org_id !=  10210 &&
1114 1125
               org_id != 9555
1115 1126
             "
@@ -1144,7 +1155,8 @@
1144 1155
               template_id != 29 &&
1145 1156
               template_id != 46 &&
1146 1157
               template_id != 47 &&
1147
-              template_id != 48 
1158
+              template_id != 48 &&
1159
+              template_id != 53
1148 1160
             "
1149 1161
           >
1150 1162
             <el-form-item label="置换率(L/h):">
@@ -1163,6 +1175,7 @@
1163 1175
                 template_id == 29 ||
1164 1176
                 template_id == 46 ||
1165 1177
                 template_id == 47 ||
1178
+                template_id == 53 ||
1166 1179
                 template_id == 48)
1167 1180
             "
1168 1181
           >
@@ -1187,6 +1200,7 @@
1187 1200
               template_id != 29 &&
1188 1201
               template_id != 43 &&
1189 1202
               template_id != 46 &&
1203
+              template_id != 53 &&
1190 1204
               template_id != 48
1191 1205
             "
1192 1206
           >
@@ -1208,6 +1222,7 @@
1208 1222
                 template_id == 26 ||
1209 1223
                 template_id == 29 ||
1210 1224
                 template_id == 46 ||
1225
+                template_id == 53 ||
1211 1226
                 template_id == 48)
1212 1227
             "
1213 1228
           >

+ 8 - 8
src/xt_pages/dialysis/details/dialysisMonitoring.vue Bestand weergeven

@@ -14,17 +14,17 @@
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  || template_id == 41 || template_id == 43 || template_id == 44 || template_id == 46 || template_id == 47 || template_id == 48 || 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 && template_id != 43 && template_id != 44 && template_id != 46  && template_id != 47 && template_id != 48 && 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 || template_id == 43 || template_id == 44 || template_id == 46 || template_id == 47  || template_id == 48)" 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 && template_id !=43 && template_id !=44 && template_id !=46 && template_id !=47 &&  template_id !=48" 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 || template_id == 43 || template_id == 44 || template_id == 46 || template_id == 47 || template_id == 48 || this.$store.getters.xt_user.template_info.org_id == 9555 || template_id == 53)" 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 && template_id != 43 && template_id != 44 && template_id != 46  && template_id != 47 && template_id != 48 && template_id != 53 && 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 || template_id == 43 || template_id == 44 || template_id == 46 || template_id == 47  || template_id == 48  || template_id == 53)" 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 && template_id !=43 && template_id !=44 && template_id !=46 && template_id !=47 &&  template_id !=48 &&  template_id !=53" 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
-          <th v-if=" isShow('置换率') && (template_id == 6 || template_id == 10 || template_id == 11 || template_id == 20 || template_id == 26 || template_id == 29 || template_id == 46 || template_id == 47 || template_id == 48) " width="92px" > 置换率(ml/min) </th>
24
-          <th v-if=" isShow('置换率') && template_id != 6 && template_id != 10 && template_id != 11 && template_id != 20 && template_id != 26 && template_id != 29 && template_id != 46 && template_id != 47 && template_id != 48" width="92px" > 置换率(L/h)  </th>
23
+          <th v-if=" isShow('置换率') && (template_id == 6 || template_id == 10 || template_id == 11 || template_id == 20 || template_id == 26 || template_id == 29 || template_id == 46 || template_id == 47 || template_id == 48 || template_id == 53) " width="92px" > 置换率(ml/min) </th>
24
+          <th v-if=" isShow('置换率') && template_id != 6 && template_id != 10 && template_id != 11 && template_id != 20 && template_id != 26 && template_id != 29 && template_id != 46 && template_id != 47 && template_id != 48 && template_id != 53" width="92px" > 置换率(L/h)  </th>
25 25
           <th v-if=" isShow('置换量') && (template_id == 43)" width="92px"> 置换量(ml/h)  </th>
26
-          <th v-if=" isShow('置换量') && ((template_id == 6 && org_id != 9919 && org_id !=10191) || org_id == 9779 || template_id == 11 || template_id == 20 || template_id == 26 || template_id == 29 || template_id == 46 || template_id == 48)" width="92px"  > 置换量(ml)  </th>
27
-          <th v-if=" isShow('置换量') && ((template_id != 6 || org_id == 9919 || org_id == 10191) && org_id != 9779 && template_id != 11 && template_id != 20 && template_id != 26 && template_id != 29 && template_id != 46 && template_id != 48)" width="92px" > 置换量(L) </th>
26
+          <th v-if=" isShow('置换量') && ((template_id == 6 && org_id != 9919 && org_id !=10191) || org_id == 9779 || template_id == 11 || template_id == 20 || template_id == 26 || template_id == 29 || template_id == 46 || template_id == 48 || template_id == 53)" width="92px"  > 置换量(ml)  </th>
27
+          <th v-if=" isShow('置换量') && ((template_id != 6 || org_id == 9919 || org_id == 10191) && org_id != 9779 && template_id != 11 && template_id != 20 && template_id != 26 && template_id != 29 && template_id != 46 && template_id != 48 && template_id != 53)" width="92px" > 置换量(L) </th>
28 28
           <th v-if=" isShow('SpO₂') && template_id != 6 && template_id != 10 && template_id != 11  " width="92px" > SpO₂(%) </th>
29 29
           <th v-if="isShow('电导度')" width="92px">电导度(mS/m)</th>
30 30
           <th v-if="isShow('置换液流量') && template_id != 27" width="92px">置换液流量(ml/h)</th>

+ 37 - 41
src/xt_pages/dialysis/dialysisDoctorAdvice.vue Bestand weergeven

@@ -441,7 +441,7 @@ export default {
441 441
     this.getTemplateInfo();
442 442
     this.requestSchedualDoctors(this.time)
443 443
     // this.template_id = this.$store.getters.xt_user.template_info.template_id;
444
-
444
+    this.org_id = this.$store.getters.xt_user.template_info.org_id;
445 445
   },
446 446
   methods: {
447 447
     getTemplateInfo() {
@@ -536,51 +536,47 @@ export default {
536 536
             if(project_config.is_open == 1){
537 537
               this.project = resp.data.project
538 538
               console.log( this.project)
539
+             
539 540
               let projectArr = []
540
-              this.project.map(item => {
541
-                resp.data.hisAdvices.map(it => {
542
-                  if(item.patient_id == it.patient_id){
543
-                    projectArr.push(item)
541
+              if(this.org_id !=9671 && this.org_id!= 10318){
542
+                this.project.map(item => {
543
+                  resp.data.hisAdvices.map(it => {
544
+                    if(item.patient_id == it.patient_id){
545
+                      projectArr.push(item)
546
+                    }
547
+                  })
548
+                })
549
+               
550
+                 resp.data.hisAdvices.map((item,index) => {
551
+                  if(projectArr[index].project && projectArr[index].project.length > 0){
552
+                    projectArr[index].project.map(it => {
553
+                      let obj = {
554
+                        advice_doctor: it.doctor,
555
+                        start_time:it.start_time,
556
+                        advice_name:it.team_id > 0 && it.is_check_team == 1 ? it.team.project_team : it.type == 2 ? it.project.project_name : it.good_info.good_name,
557
+                        execution_time:it.execution_time,
558
+                        execution_state:it.execution_state,
559
+                        execution_staff:it.execution_staff,
560
+                        check_time:it.check_time,
561
+                        check_state:it.check_state,
562
+                        checker:it.checker,
563
+                        created_time:it.ctime,
564
+                        delivery_way:'',
565
+                        execution_frequency:'',
566
+                        remark:'',
567
+                        id:it.id,
568
+                        patient_id:it.patient_id,
569
+                        parent_id:0,
570
+                        groupno:0
571
+                      }
572
+                      item.doctor_advice.push(obj)
573
+                    })
544 574
                   }
545 575
                 })
546
-              })
547
-
576
+              }
577
+            
548 578
               console.log(projectArr)
549 579
 
550
-              resp.data.hisAdvices.map((item,index) => {
551
-                if(projectArr[index].project && projectArr[index].project.length > 0){
552
-                  projectArr[index].project.map(it => {
553
-                    let obj = {
554
-                      advice_doctor: it.doctor,
555
-                      start_time:it.start_time,
556
-                      advice_name:it.team_id > 0 && it.is_check_team == 1 ? it.team.project_team : it.type == 2 ? it.project.project_name : it.good_info.good_name,
557
-                      execution_time:it.execution_time,
558
-                      execution_state:it.execution_state,
559
-                      execution_staff:it.execution_staff,
560
-                      check_time:it.check_time,
561
-                      check_state:it.check_state,
562
-                      checker:it.checker,
563
-                      created_time:it.ctime,
564
-                      delivery_way:'',
565
-                      execution_frequency:'',
566
-                      remark:'',
567
-                      id:it.id,
568
-                      patient_id:it.patient_id,
569
-                      parent_id:0,
570
-                      groupno:0
571
-                    }
572
-                    // let advice = []
573
-                    // advice.push(obj)
574
-                    // let advices = {
575
-                    //   advices: advice,
576
-                    //   group_no: 123
577
-                    // }
578
-
579
-                //     // console.log(11111,item.new_advice)
580
-                    item.doctor_advice.push(obj)
581
-                  })
582
-                }
583
-              })
584 580
             }
585 581
             console.log('resp.data.hisAdvices',resp.data.hisAdvices)
586 582
            if(config.is_open == 0 || config.is_open == 2){

+ 39 - 10
src/xt_pages/dialysis/dialysisPrintOrder.vue Bestand weergeven

@@ -33,7 +33,7 @@
33 33
             icon="el-icon-printer"
34 34
             @click="printThisOnePage"
35 35
             type="primary"
36
-            >打印录单</el-button
36
+            >打印录单</el-button
37 37
           >
38 38
           <el-button
39 39
             :loading="loading"
@@ -91,7 +91,7 @@
91 91
             icon="el-icon-printer"
92 92
             @click="printThisOnePage"
93 93
             type="primary"
94
-            >打印录单</el-button
94
+            >打印录单</el-button
95 95
           >
96 96
           <el-button
97 97
             :loading="loading"
@@ -205,7 +205,7 @@
205 205
             icon="el-icon-printer"
206 206
             @click="printThisOnePage"
207 207
             type="primary"
208
-            >打印录单</el-button
208
+            >打印录单</el-button
209 209
           >
210 210
           <el-button
211 211
             :loading="loading"
@@ -308,7 +308,7 @@
308 308
             icon="el-icon-printer"
309 309
             @click="printThisOnePage"
310 310
             type="primary"
311
-            >打印录单</el-button
311
+            >打印录单</el-button
312 312
           >
313 313
           <el-button
314 314
             :loading="loading"
@@ -336,7 +336,7 @@
336 336
             icon="el-icon-printer"
337 337
             @click="printThisOnePage"
338 338
             type="primary"
339
-            >打印录单</el-button
339
+            >打印录单</el-button
340 340
           >
341 341
           <el-button
342 342
             :loading="loading"
@@ -409,7 +409,7 @@
409 409
             icon="el-icon-printer"
410 410
             @click="printThisOnePage"
411 411
             type="primary"
412
-            >打印录单</el-button
412
+            >打印录单</el-button
413 413
           >
414 414
           <el-button
415 415
             :loading="loading"
@@ -487,7 +487,7 @@
487 487
             icon="el-icon-printer"
488 488
             @click="printThisOnePage"
489 489
             type="primary"
490
-            >打印录单</el-button
490
+            >打印录单</el-button
491 491
           >
492 492
           <el-button
493 493
             :loading="loading"
@@ -677,6 +677,17 @@
677 677
           >打印</el-button
678 678
         >
679 679
       </template>
680
+      <template
681
+        v-if="org_template_info.template_id == 54">
682
+        <el-button
683
+          :loading="loading"
684
+          size="small"
685
+          icon="el-icon-printer"
686
+          @click="printThisPage"
687
+          type="primary"
688
+          >打印</el-button
689
+        >
690
+      </template>
680 691
     </div>
681 692
     <div class="app-container" style="min-height: 0">
682 693
       <!--<div class="order-print-btn"-->
@@ -1012,7 +1023,6 @@
1012 1023
           >
1013 1024
           </DialysisPrintOrderFortyTwo>
1014 1025
 
1015
-        
1016 1026
           <DialysisPrintOrderFortyThree
1017 1027
             v-bind:childResponse="childResponse"
1018 1028
             v-if="org_template_info.template_id == 43"
@@ -1074,6 +1084,12 @@
1074 1084
             v-if="org_template_info.template_id == 53"
1075 1085
           >
1076 1086
           </DialysisPrintOrderFiftyThree>
1087
+           <DialysisPrintOrderFiftyFour
1088
+            v-bind:childResponse="childResponse"
1089
+            v-if="org_template_info.template_id == 54"
1090
+          >
1091
+          </DialysisPrintOrderFiftyFour>
1092
+          
1077 1093
         </div>
1078 1094
       </el-container>
1079 1095
     </div>
@@ -1145,9 +1161,11 @@ import DialysisPrintOrderFifty from "./template/DialysisPrintOrderFifty";
1145 1161
 import DialysisPrintOrderFiftyOne from "./template/DialysisPrintOrderFiftyOne";
1146 1162
 import DialysisPrintOrderFiftyTwo from "./template/DialysisPrintOrderFiftyTwo";
1147 1163
 import DialysisPrintOrderFiftyThree from "./template/DialysisPrintOrderFiftyThree";
1164
+import DialysisPrintOrderFiftyFour from "./template/DialysisPrintOrderFiftyFour"
1148 1165
 export default {
1149 1166
   name: "dialysisPrintOrder",
1150 1167
   components: {
1168
+    DialysisPrintOrderFiftyFour,
1151 1169
     DialysisPrintOrderFiftyThree,
1152 1170
     DialysisPrintOrderFiftyTwo,
1153 1171
     DialysisPrintOrderFiftyOne,
@@ -1386,6 +1404,8 @@ export default {
1386 1404
         '@media print {.dialysis-print-order{width:960px;margin:100px auto}.dialysis-print-order .order-yy-name{margin:auto;text-align:center;font-size:20px;letter-spacing:5px}.dialysis-print-order .order-title{margin:auto;font-weight:600;text-align:center;font-size:30px;padding:10px 20px 20px 20px}.dialysis-print-order .table-box{width:100%;line-height:23px;font-size:14px}.dialysis-print-order .print-table{width:100%;text-align:center;border-collapse:collapse;line-height:25px;font-size:15px}.dialysis-print-order .print-table-no{width:100%;text-align:center;border-collapse:collapse;font-size:14px}.dialysis-print-order .under-line{border-bottom:1px solid #999;width:95%;text-align:center;margin-left:2px}.dialysis-print-order .title-box{text-align:center;font-size:16px;border:1px solid #666}.dialysis-print-order .radio-lebel-box{font-weight:400;cursor:pointer}.dialysis-print-order .radio-no{opacity:0;outline:0;position:absolute;margin:0;width:0;height:0;z-index:-1}.dialysis-print-order .radio-inner{white-space:nowrap;cursor:pointer;outline:0;display:inline-block;line-height:1;position:relative;vertical-align:middle}.dialysis-print-order .radio-fang{display:inline-block;position:relative;border:1px solid #000;box-sizing:border-box;width:14px;height:14px;background-color:#fff;z-index:1;transition:border-color .25s cubic-bezier(.71,-.46,.29,1.46),background-color .25s cubic-bezier(.71,-.46,.29,1.46)}.dialysis-print-order .is-checked-radio::after{content:"√";font-size:15px}}.dialysis-print-order .print-table-no tr td { padding: 8px 5px; line-height: 25px; }.es-img{height: 20px; }.advice-name{text-align: left;}.advice-children{display:flex;} .dialysis-print-order .print-table tr td{padding: 0px 0px;} .print-template-two tr {line-height: 30px;}   .title-box-pro{border: 0 #fff;line-height: 40px;height: 40px;text-align: left;padding-left: 10px !important;}  .text-align-left{text-align: left !important;padding-left:10px !important;font-size: 14px !important;line-height: 25px;}';
1387 1405
       // 漳浦天福样式
1388 1406
       const style12 ='@page {margin-top:5px;}@media print {.dialysis-print-order{width:960px;margin:0 auto} .dialysis-print-order .order-yy-name{margin:auto;text-align:center;font-size:20px;letter-spacing:5px}.dialysis-print-order .order-title{margin:auto;font-weight:600;text-align:center;font-size:22px;padding:10px 20px 20px 20px}.dialysis-print-order .table-box{width:100%;line-height:40px;font-size:14px} .dialysis-print-order .print-table{width:100%;text-align:center;border-collapse:collapse;line-height:40px;font-size:14px} .print-table tbody tr td{border-collapse:collapse;} .list_table{border-collapse:collapse;height:40px;display: flex;justify-content: flex-start;} .list_table div{text-align: left;flex: 1;}  .list_table_1{height:40px;line-height:40px;text-align:left;border-collapse:collapse;} .list_table_1 div{height:40px;line-height:40px;} .dialysis-print-order .print-table-2{ width: 100%;text-align: left;border-collapse: collapse;line-height: 38px;font-size: 14px;} .dialysis-print-order .print-table-2 tbody tr{height:43px; padding-bottom:-12px;} .print-table-2 tbody tr td{padding-bottom:-12px;} .td_div1{display:flex;white-space: normal;} .print-table-3{text-align: center;width: 300px;border-collapse: inherit;height: 129px !important;border: none;} .print-table-3 .tr_3{border-bottom: 1px solid;} .print-table-3 .td_3 {border-right: 1px solid;} .print-table-3 .td_3_1 {width:66px;border-right: 1px solid;} .print-table-3 .td_3_2 {width:72px;border-right: 1px solid;} .dialysis-print-order .print-table-no{width:100%;text-align:center;border-collapse:collapse;font-size:14px}.dialysis-print-order .under-line{border-bottom:1px solid #999;width:95%;text-align:center;margin-left:2px}.dialysis-print-order .title-box{text-align:center;font-size:16px;border:1px solid #666}.dialysis-print-order .radio-lebel-box{font-weight:400;cursor:pointer}.dialysis-print-order .radio-no{opacity:0;outline:0;position:absolute;margin:0;width:0;height:0;z-index:-1}.dialysis-print-order .radio-inner{white-space:nowrap;cursor:pointer;outline:0;display:inline-block;line-height:1;position:relative;vertical-align:middle}.dialysis-print-order .radio-fang{display:inline-block;position:relative;border:1px solid #000;box-sizing:border-box;width:14px;height:14px;background-color:#fff;z-index:1;transition:border-color .25s cubic-bezier(.71,-.46,.29,1.46),background-color .25s cubic-bezier(.71,-.46,.29,1.46)}.dialysis-print-order .is-checked-radio::after{content:"√";font-size:15px}}.dialysis-print-order .print-table-no tr td { padding: 8px 5px; line-height: 25px; }.es-img{height: 20px; }.advice-name{text-align: left;}.advice-children{display:flex;} .dialysis-print-order .print-table tr td{padding: 0px 0px;line-height:35px} .print-template-two tr {line-height: 30px;}   .title-box-pro{border: 0 #fff;line-height: 40px;height: 40px;text-align: left;padding-left: 10px !important;}  .text-align-left{text-align: left !important;padding-left:10px !important;font-size: 14px !important;line-height: 25px;}@page {margin-left:30px;margin-right:40px;}';
1407
+      // 金乡宏大样式
1408
+      const style13 ='@page {margin-top:5px;}@media print {.dialysis-print-order{width:960px;margin:0 auto} .dialysis-print-order .order-yy-name{margin:auto;text-align:center;font-size:20px;letter-spacing:5px}.dialysis-print-order .order-title{margin:auto;font-weight:600;text-align:center;font-size:22px;padding:10px 20px 20px 20px}.dialysis-print-order .table-box{width:100%;line-height:40px;font-size:14px} .dialysis-print-order .print-table{width:100%;text-align:center;border-collapse:collapse;line-height:40px;font-size:14px} .print-table tbody tr td{border-collapse:collapse;} .list_table{border-collapse:collapse;height:40px;display: flex;justify-content: flex-start;} .list_table div{text-align: left;flex: 1;}  .list_table_1{height:40px;line-height:40px;text-align:left;border-collapse:collapse;} .list_table_1 div{height:40px;line-height:40px;} .dialysis-print-order .print-table-2{ width: 100%;text-align: left;border-collapse: collapse;line-height: 38px;font-size: 14px;} .dialysis-print-order .print-table-2 tbody tr{height:43px; padding-bottom:-12px;} .print-table-2 tbody tr td{padding-bottom:-12px;} .td_div1{display:flex;white-space: normal;} .print-table-3{text-align: center;width: 390px;border-collapse: inherit;height: 129px !important;border: none;} .print-table-3 .tr_3{border-bottom: 1px solid;} .print-table-3 .td_3 {border-right: 1px solid;} .print-table-3 .td_3_1 {width:66px;border-right: 1px solid;} .print-table-3 .td_3_2 {width:72px;border-right: 1px solid;} .print-table-4{text-align: center;width: 300px;border-collapse: inherit;height: 129px !important;border: none;} .print-table-4 .tr_3{border-bottom: 1px solid;}  .print-table-4 .td_3 {border-right: 1px solid;} .print-table-4 .td_3_1 {width:66px;border-right: 1px solid;} .print-table-4 .td_3_2 {width:72px;border-right: 1px solid;} .print-table-5{width:100%;text-align:center;border-collapse:collapse;line-height:40px;font-size:14px} .dialysis-print-order .print-table-5 tr td_5{width:75px;} .dialysis-print-order .print-table-no{width:100%;text-align:center;border-collapse:collapse;font-size:14px}.dialysis-print-order .under-line{border-bottom:1px solid #999;width:95%;text-align:center;margin-left:2px}.dialysis-print-order .title-box{text-align:center;font-size:16px;border:1px solid #666}.dialysis-print-order .radio-lebel-box{font-weight:400;cursor:pointer}.dialysis-print-order .radio-no{opacity:0;outline:0;position:absolute;margin:0;width:0;height:0;z-index:-1}.dialysis-print-order .radio-inner{white-space:nowrap;cursor:pointer;outline:0;display:inline-block;line-height:1;position:relative;vertical-align:middle}.dialysis-print-order .radio-fang{display:inline-block;position:relative;border:1px solid #000;box-sizing:border-box;width:14px;height:14px;background-color:#fff;z-index:1;transition:border-color .25s cubic-bezier(.71,-.46,.29,1.46),background-color .25s cubic-bezier(.71,-.46,.29,1.46)}.dialysis-print-order .is-checked-radio::after{content:"√";font-size:15px}}.dialysis-print-order .print-table-no tr td { padding: 8px 5px; line-height: 25px; }.es-img{height: 20px; }.advice-name{text-align: left;}.advice-children{display:flex;} .dialysis-print-order .print-table tr td{padding: 0px 0px;line-height:35px} .print-template-two tr {line-height: 30px;}   .title-box-pro{border: 0 #fff;line-height: 40px;height: 40px;text-align: left;padding-left: 10px !important;}  .text-align-left{text-align: left !important;padding-left:10px !important;font-size: 14px !important;line-height: 25px;}@page {margin-left:30px;margin-right:40px;}';
1389 1409
 
1390 1410
       if (this.org_template_info.template_id == 1) {
1391 1411
         printJS({
@@ -1670,7 +1690,7 @@ export default {
1670 1690
         printJS({
1671 1691
           printable: "dialysis-print-box",
1672 1692
           type: "html",
1673
-          style: style2,
1693
+          style: style,
1674 1694
           scanStyles: false,
1675 1695
         });
1676 1696
       } else if (this.org_template_info.template_id == 43) {
@@ -1678,7 +1698,7 @@ export default {
1678 1698
           printable: "dialysis-print-box-1",
1679 1699
           type: "html",
1680 1700
           style: style2,
1681
-          scanStyles: true,
1701
+          scanStyles: false,
1682 1702
         });
1683 1703
       } else if (this.org_template_info.template_id == 44) {
1684 1704
         printJS({
@@ -1733,6 +1753,15 @@ export default {
1733 1753
           style: style12,
1734 1754
           scanStyles: false,
1735 1755
         });
1756
+      }else if (
1757
+        this.org_template_info.template_id == 54
1758
+      ) {
1759
+        printJS({
1760
+          printable: "dialysis-print-box",
1761
+          type: "html",
1762
+          style: style13,
1763
+          scanStyles: false,
1764
+        });
1736 1765
       }
1737 1766
     },
1738 1767
     printThisOnePage() {

+ 26 - 30
src/xt_pages/dialysis/doctorAdvicePrint.vue Bestand weergeven

@@ -258,7 +258,8 @@ export default {
258 258
             time:'',
259 259
             show:true,
260 260
             showOne:false,
261
-            delivery_way:""
261
+            delivery_way:"",
262
+            org_id:0,
262 263
         }
263 264
     },
264 265
     methods:{
@@ -291,36 +292,31 @@ export default {
291 292
                     this.project = resp.data.project
292 293
                     resp.data.hisAdvices.map((item,index) => {
293 294
                     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
295
+                      if(this.org_id!=9671 && this.org_id!= 10318){
296
+                        if(this.project[index].project.length > 0){
297
+                            this.project[index].project.map(it => {
298
+                            let obj = {
299
+                                advice_doctor: it.doctor,
300
+                                start_time:it.start_time,
301
+                                advice_name: it.type == 2 ? it.project.project_name : it.good_info.good_name,
302
+                                execution_time:it.execution_time,
303
+                                execution_state:it.execution_state,
304
+                                execution_staff:it.execution_staff,
305
+                                check_time:it.check_time,
306
+                                check_state:it.check_state,
307
+                                checker:it.checker,
308
+                                created_time:it.ctime,
309
+                                remark:'',
310
+                                id:it.id,
311
+                                parent_id:0,
312
+                                groupno:0
313
+                            }
314
+                        
315
+                            item.doctor_advice.push(obj)
316
+                            })
311 317
                         }
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 318
                     }
323
-                    })
319
+                   })
324 320
                 }
325 321
                 if(config.is_open == 0 || config.is_open == 2){
326 322
 
@@ -781,11 +777,11 @@ export default {
781 777
     created(){
782 778
       var time = this.$route.query.time
783 779
       var delivery_way = this.$route.query.delivery_way
784
-      console.log("delivery_Way",delivery_way)
785 780
       this.delivery_way = delivery_way
786 781
       this.time = moment(time).format('YYYY-MM-DD')
787 782
       console.log(11,this.$route.query)
788 783
       this.requestSchedualDoctors(time)
784
+      this.org_id = this.$store.getters.xt_user.template_info.org_id;
789 785
     }
790 786
 }
791 787
 </script>

+ 2 - 2
src/xt_pages/dialysis/template/DialysisPrintOrderEleven.vue Bestand weergeven

@@ -495,7 +495,7 @@
495 495
                     <tbody>
496 496
                       <tr>
497 497
                         <td :colspan="prescription.mode_id == 2 || prescription.mode_id == 5 ? 12 : 11" style="letter-spacing:5px;text-align:center;font-weight:520;font-size:16px;padding: 6px 8px;line-height: 30px;">
498
-                          治疗
498
+                          治疗
499 499
                         </td>
500 500
                       </tr>
501 501
                       <tr>
@@ -1331,7 +1331,7 @@ export default {
1331 1331
             }
1332 1332
         })
1333 1333
         }
1334
-        
1334
+
1335 1335
         if(num == 0){
1336 1336
           this.$message.success('核对完成')
1337 1337
         }

+ 1 - 1
src/xt_pages/dialysis/template/DialysisPrintOrderFifty.vue Bestand weergeven

@@ -1160,7 +1160,7 @@
1160 1160
                             line-height: 30px;
1161 1161
                           "
1162 1162
                         >
1163
-                          治疗
1163
+                          治疗
1164 1164
                         </td>
1165 1165
                       </tr>
1166 1166
                       <tr>

Diff onderdrukt omdat het te groot bestand
+ 1888 - 0
src/xt_pages/dialysis/template/DialysisPrintOrderFiftyFour.vue


+ 8 - 8
src/xt_pages/dialysis/template/DialysisPrintOrderFiftyOne.vue Bestand weergeven

@@ -50,7 +50,7 @@
50 50
             病区:
51 51
             <div class="under_line" style="width: 50px;text-align: center;">
52 52
               <span>{{ patientInfo.DialysisSchedule.device_zone.name ? patientInfo.DialysisSchedule.device_zone.name : '' }}</span>
53
-              
53
+
54 54
             </div>
55 55
           </div>
56 56
           <div class="inline_block">
@@ -532,7 +532,7 @@
532 532
                     <tbody>
533 533
                       <tr>
534 534
                         <td :colspan="prescription.mode_id == 2 || prescription.mode_id == 5 ? 14 : 13" style="letter-spacing:5px;text-align:center;font-weight:520;font-size:16px;padding: 6px 8px;line-height: 30px;">
535
-                          治疗
535
+                          治疗
536 536
                         </td>
537 537
                       </tr>
538 538
                       <tr>
@@ -594,9 +594,9 @@
594 594
                         <!-- SPO2 -->
595 595
                         <td >{{ monitor.blood_oxygen_saturation ? monitor.blood_oxygen_saturation : "" }}</td>
596 596
                         <td>{{ monitor.dialysate_temperature ? monitor.dialysate_temperature : "" }}</td>
597
-                        
597
+
598 598
                         <td>{{ monitor.conductivity ? monitor.conductivity : "" }}</td>
599
-                        
599
+
600 600
                         <td v-if="(dialysisOrder && monitor.operate_time > dialysisOrder.end_time) || (dialysisOrder && monitor.operate_time < dialysisOrder.start_time)">
601 601
                           {{ monitor.ultrafiltration_volume ? monitor.ultrafiltration_volume : "" }}
602 602
                         </td>
@@ -869,14 +869,14 @@
869 869
                     <span>{{ advice.advice_name }}</span>
870 870
 
871 871
                     <span v-if="advice && advice.advice_desc">({{ advice.advice_desc }}{{ advice.drug_spec_unit }})</span>
872
-                    
872
+
873 873
                     <span v-if="advice.prescribing_number">&nbsp;&nbsp; {{ advice.prescribing_number }}{{ advice.prescribing_number_unit }}</span>
874
-                    
874
+
875 875
                     <span v-if="advice.single_dose != 0">{{ advice.single_dose }}{{ advice.single_dose_unit }}</span>
876 876
                     <span v-if="advice.parent_id == 0">{{ advice.delivery_way }}</span>
877
-                    
877
+
878 878
                     <span v-if="advice.parent_id == 0">{{ advice.execution_frequency }}</span>
879
-                   
879
+
880 880
                     <span v-if="advice.parent_id == 0 && advice.remark.length > 0">({{ advice.remark }})</span>
881 881
                   </td>
882 882
                   <!-- <td colspan="2" height="60px" style="text-align: center" v-else >

Diff onderdrukt omdat het te groot bestand
+ 1024 - 72
src/xt_pages/dialysis/template/DialysisPrintOrderFiftyThree.vue


+ 1 - 1
src/xt_pages/dialysis/template/DialysisPrintOrderFortyNine.vue Bestand weergeven

@@ -521,7 +521,7 @@
521 521
                     <tbody>
522 522
                       <tr>
523 523
                         <td :colspan="prescription.mode_id == 2 || prescription.mode_id == 5 ? 12 : 11" style="letter-spacing:5px;text-align:center;font-weight:520;font-size:16px;padding: 6px 8px;line-height: 30px;">
524
-                          治疗
524
+                          治疗
525 525
                         </td>
526 526
                       </tr>
527 527
                       <tr>

+ 60 - 31
src/xt_pages/dialysis/template/DialysisPrintOrderFortySeven.vue Bestand weergeven

@@ -754,7 +754,13 @@
754 754
                             ? prescription.dialyzer_perfusion_apparatus
755 755
                             : ""
756 756
                         }}
757
-                        <span v-if="!prescription.dialysis_dialyszers&&!prescription.dialyzer_perfusion_apparatus">/</span>
757
+                        <span
758
+                          v-if="
759
+                            !prescription.dialysis_dialyszers &&
760
+                            !prescription.dialyzer_perfusion_apparatus
761
+                          "
762
+                          >/</span
763
+                        >
758 764
                         <span v-if="prescription.dialysis_dialyszers">/</span>
759 765
                         {{
760 766
                           prescription.dialysis_dialyszers
@@ -816,10 +822,10 @@
816 822
                         class="under_line"
817 823
                         style="width: 100px; text-align: center"
818 824
                       >
819
-                        <span v-if="org_id == 10290">{{
825
+                        <span v-if="org_id == 10290 || org_id == 10318">{{
820 826
                           lastafterdialysis.weight_after
821 827
                         }}</span>
822
-                        <span v-else>{{
828
+                        <span v-if="org_id != 10290 && org_id != 10318">{{
823 829
                           predialysis.weight_after_last_transparency
824 830
                             ? predialysis.weight_after_last_transparency
825 831
                             : "未称重"
@@ -1139,7 +1145,7 @@
1139 1145
                             line-height: 30px;
1140 1146
                           "
1141 1147
                         >
1142
-                          治疗
1148
+                          治疗
1143 1149
                         </td>
1144 1150
                       </tr>
1145 1151
                       <tr>
@@ -1289,7 +1295,6 @@
1289 1295
                                 : ""
1290 1296
                             }}
1291 1297
                           </span>
1292
-                          
1293 1298
                         </td>
1294 1299
                         <!-- <td
1295 1300
                           v-if="
@@ -1445,19 +1450,20 @@
1445 1450
                           style="padding-left: 7px"
1446 1451
                         >
1447 1452
                           <span v-if="advice.parent_id > 0">---></span>
1448
-                          <span>{{ advice.advice_name }}</span>
1453
+                          <span v-if="advice.advice_name">{{ advice.advice_name }}</span>
1454
+                          <span v-else-if="advice.project && advice.project.project_name">{{ advice.project.project_name }}</span>
1455
+
1449 1456
                           <span v-if="advice && advice.advice_desc"
1450 1457
                             >({{ advice.advice_desc
1451 1458
                             }}{{ advice.drug_spec_unit }})</span
1452 1459
                           >
1453
-                          <span v-if="advice.prescribing_number"
1454
-                            >&nbsp;&nbsp; {{ advice.prescribing_number
1455
-                            }}{{ advice.prescribing_number_unit }}</span
1456
-                          >
1460
+                          
1461
+                         
1457 1462
                           <span v-if="advice.single_dose != 0"
1458 1463
                             >{{ advice.single_dose
1459 1464
                             }}{{ advice.single_dose_unit }}</span
1460 1465
                           >
1466
+                          <span v-if="advice && advice.project">{{advice.project.unit}}</span>
1461 1467
                           <span v-if="advice.parent_id == 0">{{
1462 1468
                             advice.delivery_way
1463 1469
                           }}</span>
@@ -1477,11 +1483,11 @@
1477 1483
                       <span v-if="advice.remark.length > 0">({{advice.remark}})</span>
1478 1484
                     </td> -->
1479 1485
                         <!-- <td width="10%" v-if="(advice.children && advice.children.length > 0 || advice.parent_id > 0) && advice.isShow == 2" ></td> -->
1480
-                        <td height="32px">
1486
+                        <td height="32px" v-if="advice.advice_doctor">
1481 1487
                           <span
1482 1488
                             v-if="setAdminUserES(advice.advice_doctor) == ''"
1483 1489
                             >{{ getAdminUser(advice.advice_doctor) }}</span
1484
-                          >
1490
+                          >  
1485 1491
                           <img
1486 1492
                             style="height: 30px"
1487 1493
                             :src="setAdminUserES(advice.advice_doctor)"
@@ -1490,6 +1496,19 @@
1490 1496
                             v-else
1491 1497
                           />
1492 1498
                         </td>
1499
+                        <td v-else>
1500
+                            <span
1501
+                            v-if="setAdminUserES(advice.doctor) == ''"
1502
+                            >{{ getAdminUser(advice.doctor) }}</span
1503
+                          >
1504
+                          <img
1505
+                            style="height: 30px"
1506
+                            :src="setAdminUserES(advice.doctor)"
1507
+                            alt=""
1508
+                            srcset=""
1509
+                            
1510
+                          />
1511
+                        </td>
1493 1512
                         <!-- <td height="35px">
1494 1513
                       <span v-if="setAdminUserES(advice.checker) == ''">{{getAdminUser(advice.checker)}}</span>
1495 1514
                       <img style="height:20px;" :src="setAdminUserES(advice.checker)" alt="" srcset="" v-else>
@@ -2601,7 +2620,7 @@ export default {
2601 2620
       summary: {},
2602 2621
       receiverTreatmentAccess: {},
2603 2622
       org_template_info: {},
2604
-
2623
+      project:[],
2605 2624
       doctor_advices: [],
2606 2625
       doctor_advices_2: [],
2607 2626
       advice_groups: [],
@@ -3083,6 +3102,14 @@ export default {
3083 3102
 
3084 3103
         this.prescription = response.data.data.dialysisPrescription;
3085 3104
         console.log("透析处方", this.prescription);
3105
+        let project_arr = response.data.data.projects
3106
+        project_arr.forEach(o => {
3107
+          if(o.project.project_name && o.project.project_name!=""){
3108
+            this.project.push(o)
3109
+          }
3110
+        });
3111
+        // this.project = response.data.data.projects;
3112
+        console.log(this.project, "项目和耗材");
3086 3113
         this.receiverTreatmentAccess =
3087 3114
           response.data.data.receiverTreatmentAccess;
3088 3115
         this.prescription.mode = this.modeName(this.prescription.mode_id);
@@ -3229,7 +3256,9 @@ export default {
3229 3256
         }
3230 3257
         this.loading = false;
3231 3258
         this.doctor_advices =
3232
-          response.data.data.advices == null ? [] : response.data.data.advices;
3259
+          response.data.data.advices == null ? [] : response.data.data.advices.concat(this.project);
3260
+          // .concat(this.project)
3261
+          console.log( this.doctor_advices,' this.doctor_advices this.doctor_advices')
3233 3262
         for (let index = 0; index < this.doctor_advices.length; index++) {
3234 3263
           this.doctor_advices[index]["isShow"] = 2;
3235 3264
         }
@@ -3328,23 +3357,23 @@ export default {
3328 3357
           }
3329 3358
         }
3330 3359
 
3331
-        this.totollength = this.doctor_advices.length + this.monitors.length;
3332
-        if (this.totollength > 18) {
3333
-          var temp_advice_length = 17 - this.monitors.length;
3334
-          var doctor_advices_1 = [];
3335
-          var doctor_advices_2 = [];
3336
-          for (let index = 0; index < this.doctor_advices.length; index++) {
3337
-            const element = this.doctor_advices[index];
3338
-            if (temp_advice_length > index) {
3339
-              doctor_advices_1.push(element);
3340
-            } else {
3341
-              doctor_advices_2.push(element);
3342
-            }
3343
-          }
3344
-          this.doctor_advices = doctor_advices_1;
3345
-          this.doctor_advices_2 = doctor_advices_2;
3346
-        }
3347
-        console.log(this.advice_groups);
3360
+        // this.totollength = this.doctor_advices.length + this.monitors.length;
3361
+        // if (this.totollength > 18) {
3362
+        //   var temp_advice_length = 17 - this.monitors.length;
3363
+        //   var doctor_advices_1 = [];
3364
+        //   var doctor_advices_2 = [];
3365
+        //   for (let index = 0; index < this.doctor_advices.length; index++) {
3366
+        //     const element = this.doctor_advices[index];
3367
+        //     if (temp_advice_length > index) {
3368
+        //       doctor_advices_1.push(element);
3369
+        //     } else {
3370
+        //       doctor_advices_2.push(element);
3371
+        //     }
3372
+        //   }
3373
+        //   this.doctor_advices = doctor_advices_1;
3374
+        //   this.doctor_advices_2 = doctor_advices_2;
3375
+        // }
3376
+        // console.log(this.doctor_advices,'doctor_advices');
3348 3377
       } else {
3349 3378
         this.loading = false;
3350 3379
         this.$message.error("请求数据失败");

+ 1 - 1
src/xt_pages/dialysis/template/DialysisPrintOrderFortySix.vue Bestand weergeven

@@ -1087,7 +1087,7 @@
1087 1087
                             line-height: 30px;
1088 1088
                           "
1089 1089
                         >
1090
-                          治疗
1090
+                          治疗
1091 1091
                         </td>
1092 1092
                       </tr>
1093 1093
                       <tr>

+ 1 - 1
src/xt_pages/dialysis/template/DialysisPrintOrderFour.vue Bestand weergeven

@@ -616,7 +616,7 @@
616 616
               <td width="80">透析液温度<br/>℃</td>
617 617
               <td width="60">置换率<br/>ml/min</td> -->
618 618
 
619
-              <td width="">病情特殊处理<br/>及专科护理措施录</td>
619
+              <td width="">病情特殊处理<br/>及专科护理措施录</td>
620 620
               <td width="80">护士签名</td>
621 621
             </tr>
622 622
 

+ 3 - 3
src/xt_pages/dialysis/template/DialysisPrintOrderNineteen.vue Bestand weergeven

@@ -490,7 +490,7 @@
490 490
                   <tbody>
491 491
                     <tr>
492 492
                       <td :colspan="prescription.mode_id == 2 || prescription.mode_id == 5 ? 12 : 11" style="letter-spacing:5px;text-align:center;font-weight:520;font-size:16px;padding: 6px 8px;line-height: 30px;">
493
-                        治疗
493
+                        治疗
494 494
                       </td>
495 495
                     </tr>
496 496
                     <tr>
@@ -1346,7 +1346,7 @@ export default {
1346 1346
           response.data.data.dialysisOrder === null
1347 1347
             ? null
1348 1348
             : response.data.data.dialysisOrder;
1349
-        
1349
+
1350 1350
         if (this.operators.length > 0) {
1351 1351
           var operatorsLen = this.operators.length;
1352 1352
           for (var index = 0; index < operatorsLen; index++) {
@@ -1487,7 +1487,7 @@ export default {
1487 1487
                     this.monitors[index].end = "【结束透析】";
1488 1488
                   }
1489 1489
               }
1490
-            
1490
+
1491 1491
           }
1492 1492
         }
1493 1493
 

Diff onderdrukt omdat het te groot bestand
+ 2350 - 849
src/xt_pages/dialysis/template/DialysisPrintOrderSix.vue


+ 3 - 3
src/xt_pages/dialysis/template/DialysisPrintOrderTen.vue Bestand weergeven

@@ -487,7 +487,7 @@
487 487
                     <tbody>
488 488
                       <tr>
489 489
                         <td :colspan="prescription.mode_id == 2 || prescription.mode_id == 5 ? 12 : 11" style="letter-spacing:5px;text-align:center;font-weight:520;font-size:16px;padding: 6px 8px;line-height: 30px;">
490
-                          治疗
490
+                          治疗
491 491
                         </td>
492 492
                       </tr>
493 493
                       <tr>
@@ -1015,7 +1015,7 @@
1015 1015
                       治疗医生:
1016 1016
                       <div class="under_line" style="width: 80px">
1017 1017
                         <!-- <img style="height:20px;" src="https://images.shengws.com/FgnRnBcx1BgULJ1dn7VKzeBPEvtm" alt="" srcset="" /> -->
1018
-                       
1018
+
1019 1019
                         <span v-if="setAdminUserES(prescription.prescription_doctor) == ''">{{ getAdminUser(prescription.prescription_doctor) }}</span>
1020 1020
                         <img style="height:20px;" :src="setAdminUserES(prescription.prescription_doctor)" alt="" srcset="" v-else />
1021 1021
                       </div>
@@ -1332,7 +1332,7 @@ export default {
1332 1332
             }
1333 1333
         })
1334 1334
         }
1335
-        
1335
+
1336 1336
         if(num == 0){
1337 1337
           this.$message.success('核对完成')
1338 1338
         }

+ 4 - 3
src/xt_pages/dialysis/template/DialysisPrintOrderThirtyOne.vue Bestand weergeven

@@ -304,6 +304,7 @@
304 304
           出血
305 305
           <div class="inline_block under_line" style="width:150px;text-align: center;margin-right:30px;">
306 306
             <span v-if="predialysis.is_hemorrhage == 1">{{ predialysis.is_hemorrhage == 1 && predialysis.hemorrhage ? predialysis.hemorrhage : "" }}</span>
307
+            <span v-if="predialysis.is_hemorrhage == 1">{{ predialysis.is_hemorrhage == 1 && predialysis.hemorrhage_other ? predialysis.hemorrhage_other : "" }}</span>
307 308
             <span v-if="predialysis.is_hemorrhage == 2">无</span>
308 309
             <span v-if="predialysis.is_hemorrhage != 2 && predialysis.is_hemorrhage != 1">/</span>
309 310
           </div>
@@ -416,13 +417,13 @@
416 417
                 <td style="height:40px;line-height:40px">&nbsp;
417 418
                   {{getTime(monitor.operate_time,'{h}:{i}')}}
418 419
                 </td>
419
-                <td>&nbsp;{{monitor.systolic_blood_pressure?monitor.systolic_blood_pressure:''}} /
420
+                <td>&nbsp;{{monitor.systolic_blood_pressure?monitor.systolic_blood_pressure:''}} <span v-if="monitor.systolic_blood_pressure||monitor.diastolic_blood_pressure">/</span>
420 421
                   {{monitor.diastolic_blood_pressure?monitor.diastolic_blood_pressure:''}}
421 422
                 </td>
422 423
                 <td>&nbsp;{{monitor.pulse_frequency?monitor.pulse_frequency:''}}</td>
423 424
                 <td>&nbsp;{{monitor.blood_flow_volume?monitor.blood_flow_volume:''}}</td>
424
-                <td>&nbsp;{{monitor.venous_pressure?monitor.venous_pressure:''}}/{{ monitor.arterial_pressure ? monitor.arterial_pressure : "" }}</td>
425
-                <td>&nbsp;{{monitor.ultrafiltration_volume?monitor.ultrafiltration_volume:''}}</td>
425
+                <td>&nbsp;{{monitor.venous_pressure?monitor.venous_pressure:''}}<span v-if="monitor.venous_pressure||monitor.arterial_pressure">/</span>{{ monitor.arterial_pressure ? monitor.arterial_pressure : "" }}</td>
426
+                <td>&nbsp;{{monitor.ultrafiltration_volume==0 && monitor.id?'0':monitor.ultrafiltration_volume}}</td>
426 427
                 <td>&nbsp;{{monitor.transmembrane_pressure?monitor.transmembrane_pressure:''}}</td>
427 428
                 <td>&nbsp;{{monitor.conductivity?monitor.conductivity:''}}</td>
428 429
                 <td>&nbsp;{{monitor.dialysate_temperature ? monitor.dialysate_temperature : ''}}</td>

+ 1 - 1
src/xt_pages/dialysis/template/DialysisPrintOrderThree.vue Bestand weergeven

@@ -572,7 +572,7 @@
572 572
             <!--<td width="80">透析液温度<br/>℃</td>
573 573
               <td width="60">置换率<br/>ml/min</td> -->
574 574
 
575
-            <td width="">病情特殊处理<br />及专科护理措施录</td>
575
+            <td width="">病情特殊处理<br />及专科护理措施录</td>
576 576
             <td width="60">护士签名</td>
577 577
           </tr>
578 578
 

+ 4 - 4
src/xt_pages/dialysis/template/dialysisPrintOrderFive.vue Bestand weergeven

@@ -146,7 +146,7 @@
146 146
                       {{ predialysis.internal_fistula_other }}
147 147
                     </div>
148 148
                   </div>
149
-                </div>  
149
+                </div>
150 150
                 <div class="row" style="padding: 2px 0;line-height:19px;">
151 151
                   <div class="inline_block">
152 152
                     &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
@@ -508,7 +508,7 @@
508 508
                       <td width="80">血流量<br />ml/min</td>
509 509
                       <td width="90" v-if="org_id!=10210">超滤量累计L</td>
510 510
                       <td width="90" v-else>超滤量累计ml</td>
511
-                 
511
+
512 512
                       <td width="90">置换液流量ml/h</td>
513 513
                       <td width="80">钠浓度<br />mmol/L</td>
514 514
                       <td width="240">
@@ -1125,7 +1125,7 @@
1125 1125
             </tr>
1126 1126
           </template>
1127 1127
           <!-- <tr v-if="this.advice_groups_2.length == 0">
1128
-            <td colspan="7" style="text-align:left;">特殊录:</td>
1128
+            <td colspan="7" style="text-align:left;">特殊录:</td>
1129 1129
         </tr> -->
1130 1130
         </tbody>
1131 1131
         <div class="print-yema4">1</div>
@@ -1238,7 +1238,7 @@
1238 1238
                 </tr>
1239 1239
               </template>
1240 1240
               <!-- <tr >
1241
-                <td colspan="7" style="text-align:left;">特殊录:</td>
1241
+                <td colspan="7" style="text-align:left;">特殊录:</td>
1242 1242
             </tr> -->
1243 1243
             </tbody>
1244 1244
           </table>

Diff onderdrukt omdat het te groot bestand
+ 838 - 368
src/xt_pages/dialysis/template/dialysisPrintOrderTwelve.vue


+ 1 - 1
src/xt_pages/hospitalStation/components/chargeDialog.vue Bestand weergeven

@@ -216,7 +216,7 @@
216 216
           // {value: 2, label: '银行卡'},
217 217
           // {value: 3, label: '微信'},
218 218
           // {value: 4, label: '支付宝'},
219
-          { value: 4, label: '医保卡' },
219
+          { value: 5, label: '医保卡' },
220 220
 
221 221
         ],
222 222
         total: "",

+ 2 - 2
src/xt_pages/hospitalStation/components/prescriptionTable.vue Bestand weergeven

@@ -335,7 +335,7 @@
335 335
         })
336 336
 
337 337
       }, deleteDrug: function(index, row) {
338
-        if (this.prescription.order_status == 2) {
338
+        if (this.prescription.order_status == 2  || this.prescription.order_status == 4) {
339 339
           this.$message.error('该处方已经结算,无法删除')
340 340
           return
341 341
         }
@@ -407,7 +407,7 @@
407 407
         return name
408 408
       },
409 409
       deleteProject(row, i) {
410
-        if (this.prescription.order_status == 2) {
410
+        if (this.prescription.order_status == 2 || this.prescription.order_status == 4) {
411 411
           this.$message.error('该处方已经结算,无法删除')
412 412
           return
413 413
         }

+ 10 - 3
src/xt_pages/hospitalStation/invoicePrint.vue Bestand weergeven

@@ -15,13 +15,20 @@
15 15
       <div class="dialysisPage">
16 16
         <printOne
17 17
           v-if="
18
-            org_id != 10215 && org_id != 10265 && org_id != 4 && org_id != 0 && org_id != 9675
18
+            org_id != 10215 &&
19
+            org_id != 10265 &&
20
+            org_id != 4 &&
21
+            org_id != 0 &&
22
+            org_id != 9675
19 23
           "
20 24
           :paramsObj="invoiceParams"
21 25
         ></printOne>
22
-        <printTwo v-if="org_id == 10215 " :paramsObj="invoiceParams"></printTwo>
26
+        <printTwo
27
+          v-if="org_id == 10215 || org_id == 0"
28
+          :paramsObj="invoiceParams"
29
+        ></printTwo>
23 30
         <printThree
24
-          v-if="org_id == 10265 || org_id == 4 || org_id == 9675 ||  org_id == 0"
31
+          v-if="org_id == 10265 || org_id == 4 || org_id == 9675"
25 32
           :paramsObj="invoiceParams"
26 33
         ></printThree>
27 34
       </div>

+ 1 - 1
src/xt_pages/hospitalStation/invoiceTemplate/printThree.vue Bestand weergeven

@@ -197,7 +197,7 @@
197 197
         </div>
198 198
         <div style="position: absolute;top:370px;left:480px">
199 199
             <!-- 应退款 -->
200
-            应退款:{{list.refund_sum}}
200
+            应退款:{{parseFloat(pre_pay_money)}}
201 201
         </div>
202 202
         <div>
203 203
             <div style="position: absolute;top:400px;left:40px">

+ 421 - 247
src/xt_pages/hospitalStation/invoiceTemplate/printTwo.vue Bestand weergeven

@@ -1,282 +1,456 @@
1 1
 <template>
2
-    <div id='invoice-print' style="font-size:12px;">
3
-        <div style="display:flex;">
4
-            <div style="position: absolute;top:50px;left:60px;">{{ list.order_number }}</div>
5
-            <!-- <div>{{ list.id_card_no }}</div> -->
2
+  <div id="invoice-print" style="font-size: 12px">
3
+    <div v-if="list.order_number">
4
+      <div style="display: flex">
5
+        <div style="position: absolute; top: 50px; left: 60px">
6
+          {{ list.order_number }}
6 7
         </div>
7
-        <div style="display:flex;justify-content: space-between;">
8
-            <!-- <div>{{ list.department_name }}</div> -->
9
-            <div  style="position: absolute;top:50px;left:260px">{{id_card_no?id_card_no:list.order.certno}}</div>
10
-            <div></div>
8
+        <!-- <div>{{ list.id_card_no }}</div> -->
9
+      </div>
10
+      <div style="display: flex; justify-content: space-between">
11
+        <!-- <div>{{ list.department_name }}</div> -->
12
+        <div style="position: absolute; top: 50px; left: 260px">
13
+          {{ id_card_no ? id_card_no : list.order.certno }}
11 14
         </div>
12
-        <div style="display:flex;justify-content: space-between;">
13
-            <!-- <div>{{ list.department_name }}</div> -->
14
-            <div  style="position: absolute;top:70px;left:90px">门诊</div>
15
-            <div></div>
16
-            <div  style="position: absolute;top:70px;left:240px">{{ number?number:list.order.mdtrt_id}}</div>
17
-            <div  style="position: absolute;left:470px;top:70px;">
18
-                <span>{{  paramsObj.setl_time ? paramsObj.setl_time.split(' ')[0].slice(0,4) : getTime(list.date, '{y}-{m}-{d}').slice(0,4) }}</span>
19
-            </div>
20
-            <div  style="position: absolute;left:530px;top:70px;">
21
-                <span>{{ paramsObj.setl_time ? parseInt(paramsObj.setl_time.split(' ')[0].slice(5,7)) : getTime(list.date, '{y}-{m}-{d}').slice(5,7) }}</span>
22
-            </div>
23
-            <div  style="position: absolute;left:560px;top:70px;">
24
-                <span>{{ paramsObj.setl_time ? parseInt(paramsObj.setl_time.split(' ')[0].slice(8,11)) : getTime(list.date, '{y}-{m}-{d}').slice(8,11) }}</span>
25
-            </div>
15
+        <div></div>
16
+      </div>
17
+      <div style="display: flex; justify-content: space-between">
18
+        <!-- <div>{{ list.department_name }}</div> -->
19
+        <div style="position: absolute; top: 70px; left: 90px">门诊</div>
20
+        <div></div>
21
+        <div style="position: absolute; top: 70px; left: 240px">
22
+          {{ number ? number : list.order.mdtrt_id }}
26 23
         </div>
27
-        <div style="display:flex;justify-content: space-between;">
28
-            <div style="position: absolute;top:85px;left:100px;"> {{ paramsObj.name }}</div>
29
-            <div style="position: absolute;top:85px;left:180px;">√</div>
30
-            <!-- <div>{{ list.pay_way }}</div> -->
31
-            <div style="position: absolute;top:85px;left:380px;">{{ in_hosptial_time }}</div>
32
-            <div style="position: absolute;top:85px;left:530px;">{{ out_hosptial_time }}</div>
24
+        <div style="position: absolute; left: 470px; top: 70px">
25
+          <span>{{
26
+            paramsObj.setl_time
27
+              ? paramsObj.setl_time.split(" ")[0].slice(0, 4)
28
+              : getTime(list.date, "{y}-{m}-{d}").slice(0, 4)
29
+          }}</span>
33 30
         </div>
34
-        <div style="display:flex;justify-content: space-between;">
35
-            <!-- <div>{{ paramsObj.gend == 1 ? '男' : '女' }}</div> -->
36
-            <div v-if=" gend == 1" style="position: absolute;top:110px;left:100px;">√</div>
37
-            <div v-else style="position: absolute;top:110px;left:140px;">√</div>
38
-
39
-            <div style="position: absolute;top:110px;left:260px;">{{balance_accounts_type != 2 ?  list.order.fund_pay_sumamt : '0.00' }}</div>
40
-            <div style="position: absolute;top:110px;left:420px;">{{balance_accounts_type != 2 ? list.order.psn_cash_pay : list.order.medfee_sumamt}}</div>
41
-            <div style="position: absolute;top:110px;left:540px;">现金</div>
31
+        <div style="position: absolute; left: 530px; top: 70px">
32
+          <span>{{
33
+            paramsObj.setl_time
34
+              ? parseInt(paramsObj.setl_time.split(" ")[0].slice(5, 7))
35
+              : getTime(list.date, "{y}-{m}-{d}").slice(5, 7)
36
+          }}</span>
37
+        </div>
38
+        <div style="position: absolute; left: 560px; top: 70px">
39
+          <span>{{
40
+            paramsObj.setl_time
41
+              ? parseInt(paramsObj.setl_time.split(" ")[0].slice(8, 11))
42
+              : getTime(list.date, "{y}-{m}-{d}").slice(8, 11)
43
+          }}</span>
42 44
         </div>
43
-        <div style="display:flex;justify-content: space-between;">
44
-            <div style="position: absolute;top:145px;left:50px">西药</div>
45
-            <div style="position: absolute;top:145px;left:130px">{{ list.westernMedicineCostTotal ? list.westernMedicineCostTotal.toFixed(2) : '' }}</div>
46
-            <div style="position: absolute;top:145px;left:180px">检查费</div>
47
-            <div style="position: absolute;top:145px;left:260px">{{ list.checkCostTotal ? list.checkCostTotal.toFixed(2) : '' }}</div>
48
-            <div style="position: absolute;top:145px;left:340px">治疗费</div>
49
-            <div style="position: absolute;top:145px;left:420px">{{ list.treatCostTotal ? list.treatCostTotal.toFixed(2) : '' }}</div>
50
-            <div style="position: absolute;top:145px;left:480px">床位费</div>
51
-            <div style="position: absolute;top:145px;left:540px">{{ list.bedCostTotal ? list.bedCostTotal.toFixed(2) : '' }}</div>
45
+      </div>
46
+      <div style="display: flex; justify-content: space-between">
47
+        <div style="position: absolute; top: 85px; left: 100px">
48
+          {{ paramsObj.name }}
52 49
         </div>
53
-        <div style="display:flex;justify-content: space-between;">
54
-            <div style="position: absolute;top:170px;left:50px">中成药</div>
55
-            <div style="position: absolute;top:170px;left:130px">{{ list.chineseTraditionalMedicineCostTotal ? list.chineseTraditionalMedicineCostTotal.toFixed(2) : '' }}</div>
56
-            <div style="position: absolute;top:170px;left:180px">化验费</div>
57
-            <div style="position: absolute;top:170px;left:260px">{{ list.laboratoryCostTotal ? list.laboratoryCostTotal.toFixed(2) : '' }}</div>
58
-            <div style="position: absolute;top:170px;left:340px">手术费</div>
59
-            <div style="position: absolute;top:170px;left:420px">{{ list.operationCostTotal ? list.operationCostTotal.toFixed(2) : '' }}</div>
60
-            <div style="position: absolute;top:170px;left:480px">其他费</div>
61
-            <div style="position: absolute;top:170px;left:540px">{{ list.otherCostTotal ? list.otherCostTotal.toFixed(2) : '' }}</div>
50
+        <div style="position: absolute; top: 85px; left: 180px">√</div>
51
+        <!-- <div>{{ list.pay_way }}</div> -->
52
+        <div style="position: absolute; top: 85px; left: 380px">
53
+          {{ in_hosptial_time }}
62 54
         </div>
63
-        <div style="display:flex;justify-content: space-between;">
64
-            <div style="position: absolute;top:190px;left:50px"></div>
65
-            <div style="position: absolute;top:190px;left:130px"></div>
66
-            <div style="position: absolute;top:190px;left:180px"></div>
67
-            <div style="position: absolute;top:190px;left:260px"></div>
68
-            <div style="position: absolute;top:190px;left:340px">材料费</div>
69
-            <div style="position: absolute;top:190px;left:420px">{{ list.materialCostTotal ? list.materialCostTotal.toFixed(2) : '' }}</div>
70
-            <div style="position: absolute;top:190px;left:480px">诊察费</div>
71
-            <div style="position: absolute;top:190px;left:540px">{{ list.zhenChaCostTotal ? list.zhenChaCostTotal.toFixed(2) : '' }}</div>
55
+        <div style="position: absolute; top: 85px; left: 530px">
56
+          {{ out_hosptial_time }}
72 57
         </div>
73
-        <div style="display:flex;justify-content: space-between;">
74
-            <div style="position: absolute;top:210px;left:50px"></div>
75
-            <div style="position: absolute;top:210px;left:130px"></div>
76
-            <div style="position: absolute;top:210px;left:180px"></div>
77
-            <div style="position: absolute;top:210px;left:260px" v-if="balance_accounts_type != 2">{{ list.psn_cash_money ? list.psn_cash_money.toFixed(2) : '' }}</div>
78
-          <div style="position: absolute;top:210px;left:260px" v-else>{{ list.order.medfee_sumamt ? list.order.medfee_sumamt : '' }}</div>
58
+      </div>
59
+      <div style="display: flex; justify-content: space-between">
60
+        <!-- <div>{{ paramsObj.gend == 1 ? '男' : '女' }}</div> -->
61
+        <div
62
+          v-if="gend == 1"
63
+          style="position: absolute; top: 110px; left: 100px"
64
+        >
65
+          √
66
+        </div>
67
+        <div v-else style="position: absolute; top: 110px; left: 140px">√</div>
79 68
 
80
-          <div style="position: absolute;top:210px;left:340px"></div>
81
-            <div style="position: absolute;top:210px;left:420px"></div>
82
-            <div style="position: absolute;top:210px;left:480px"></div>
83
-            <div style="position: absolute;top:210px;left:540px"></div>
69
+        <div style="position: absolute; top: 110px; left: 260px">
70
+          {{ balance_accounts_type != 2 ? list.order.fund_pay_sumamt : "0.00" }}
84 71
         </div>
85
-        <div>
86
-            <span>
87
-            <span  style="position: absolute;top:235px;left:190px">
88
-                <span v-if="zhongwen.indexOf('万') > -1 && zhongwen.indexOf('拾') > -1 && zhongwen.indexOf('拾') == 1">
89
-                    {{ zhongwen.substring(0,1) }}
90
-                </span>
91
-                <span v-else>零</span>
92
-            </span>
93
-            <span  style="position: absolute;top:235px;left:220px">
94
-                <span v-if="zhongwen.indexOf('万') > -1">
95
-                    {{ zhongwen.substring(zhongwen.indexOf('万') - 1,zhongwen.indexOf('万')) }}
96
-                </span>
97
-                <span v-else>零</span>
72
+        <div style="position: absolute; top: 110px; left: 420px">
73
+          {{
74
+            balance_accounts_type != 2
75
+              ? list.order.psn_cash_pay
76
+              : list.order.medfee_sumamt
77
+          }}
78
+        </div>
79
+        <div style="position: absolute; top: 110px; left: 540px">现金</div>
80
+      </div>
81
+      <div style="display: flex; justify-content: space-between">
82
+        <div style="position: absolute; top: 145px; left: 50px">西药</div>
83
+        <div style="position: absolute; top: 145px; left: 130px">
84
+          {{
85
+            list.westernMedicineCostTotal
86
+              ? list.westernMedicineCostTotal.toFixed(2)
87
+              : ""
88
+          }}
89
+        </div>
90
+        <div style="position: absolute; top: 145px; left: 180px">检查费</div>
91
+        <div style="position: absolute; top: 145px; left: 260px">
92
+          {{ list.checkCostTotal ? list.checkCostTotal.toFixed(2) : "" }}
93
+        </div>
94
+        <div style="position: absolute; top: 145px; left: 340px">治疗费</div>
95
+        <div style="position: absolute; top: 145px; left: 420px">
96
+          {{ list.treatCostTotal ? list.treatCostTotal.toFixed(2) : "" }}
97
+        </div>
98
+        <div style="position: absolute; top: 145px; left: 480px">床位费</div>
99
+        <div style="position: absolute; top: 145px; left: 540px">
100
+          {{ list.bedCostTotal ? list.bedCostTotal.toFixed(2) : "" }}
101
+        </div>
102
+      </div>
103
+      <div style="display: flex; justify-content: space-between">
104
+        <div style="position: absolute; top: 170px; left: 50px">中成药</div>
105
+        <div style="position: absolute; top: 170px; left: 130px">
106
+          {{
107
+            list.chineseTraditionalMedicineCostTotal
108
+              ? list.chineseTraditionalMedicineCostTotal.toFixed(2)
109
+              : ""
110
+          }}
111
+        </div>
112
+        <div style="position: absolute; top: 170px; left: 180px">化验费</div>
113
+        <div style="position: absolute; top: 170px; left: 260px">
114
+          {{
115
+            list.laboratoryCostTotal ? list.laboratoryCostTotal.toFixed(2) : ""
116
+          }}
117
+        </div>
118
+        <div style="position: absolute; top: 170px; left: 340px">手术费</div>
119
+        <div style="position: absolute; top: 170px; left: 420px">
120
+          {{
121
+            list.operationCostTotal ? list.operationCostTotal.toFixed(2) : ""
122
+          }}
123
+        </div>
124
+        <div style="position: absolute; top: 170px; left: 480px">其他费</div>
125
+        <div style="position: absolute; top: 170px; left: 540px">
126
+          {{ list.otherCostTotal ? list.otherCostTotal.toFixed(2) : "" }}
127
+        </div>
128
+      </div>
129
+      <div style="display: flex; justify-content: space-between">
130
+        <div style="position: absolute; top: 190px; left: 50px"></div>
131
+        <div style="position: absolute; top: 190px; left: 130px"></div>
132
+        <div style="position: absolute; top: 190px; left: 180px"></div>
133
+        <div style="position: absolute; top: 190px; left: 260px"></div>
134
+        <div style="position: absolute; top: 190px; left: 340px">材料费</div>
135
+        <div style="position: absolute; top: 190px; left: 420px">
136
+          {{ list.materialCostTotal ? list.materialCostTotal.toFixed(2) : "" }}
137
+        </div>
138
+        <div style="position: absolute; top: 190px; left: 480px">诊察费</div>
139
+        <div style="position: absolute; top: 190px; left: 540px">
140
+          {{ list.zhenChaCostTotal ? list.zhenChaCostTotal.toFixed(2) : "" }}
141
+        </div>
142
+      </div>
143
+      <div style="display: flex; justify-content: space-between">
144
+        <div style="position: absolute; top: 210px; left: 50px"></div>
145
+        <div style="position: absolute; top: 210px; left: 130px"></div>
146
+        <div style="position: absolute; top: 210px; left: 180px"></div>
147
+        <div
148
+          style="position: absolute; top: 210px; left: 260px"
149
+          v-if="balance_accounts_type != 2"
150
+        >
151
+          {{ list.psn_cash_money ? list.psn_cash_money.toFixed(2) : "" }}
152
+        </div>
153
+        <div style="position: absolute; top: 210px; left: 260px" v-else>
154
+          {{ list.order.medfee_sumamt ? list.order.medfee_sumamt : "" }}
155
+        </div>
156
+
157
+        <div style="position: absolute; top: 210px; left: 340px"></div>
158
+        <div style="position: absolute; top: 210px; left: 420px"></div>
159
+        <div style="position: absolute; top: 210px; left: 480px"></div>
160
+        <div style="position: absolute; top: 210px; left: 540px"></div>
161
+      </div>
162
+      <div>
163
+        <span>
164
+          <span style="position: absolute; top: 235px; left: 190px">
165
+            <span
166
+              v-if="
167
+                zhongwen.indexOf('万') > -1 &&
168
+                zhongwen.indexOf('拾') > -1 &&
169
+                zhongwen.indexOf('拾') == 1
170
+              "
171
+            >
172
+              {{ zhongwen.substring(0, 1) }}
98 173
             </span>
99
-            <span  style="position: absolute;top:235px;left:250px">
100
-                <span v-if="zhongwen.indexOf('仟') > -1">
101
-                    {{ zhongwen.substring(zhongwen.indexOf('仟') - 1,zhongwen.indexOf('仟')) }}
102
-                </span>
103
-                <span v-else>零</span>
174
+            <span v-else>零</span>
175
+          </span>
176
+          <span style="position: absolute; top: 235px; left: 220px">
177
+            <span v-if="zhongwen.indexOf('万') > -1">
178
+              {{
179
+                zhongwen.substring(
180
+                  zhongwen.indexOf("万") - 1,
181
+                  zhongwen.indexOf("万")
182
+                )
183
+              }}
104 184
             </span>
105
-            <span  style="position: absolute;top:235px;left:290px">
106
-                <span v-if="zhongwen.indexOf('佰') > -1">
107
-                    {{ zhongwen.substring(zhongwen.indexOf('佰') - 1,zhongwen.indexOf('佰')) }}
108
-                </span>
109
-                <span v-else>零</span>
185
+            <span v-else>零</span>
186
+          </span>
187
+          <span style="position: absolute; top: 235px; left: 250px">
188
+            <span v-if="zhongwen.indexOf('仟') > -1">
189
+              {{
190
+                zhongwen.substring(
191
+                  zhongwen.indexOf("仟") - 1,
192
+                  zhongwen.indexOf("仟")
193
+                )
194
+              }}
110 195
             </span>
111
-            <span style="position: absolute;top:235px;left:320px">
112
-                <span v-if="zhongwen.indexOf('拾') > -1">
113
-                    {{zhongwen.substring(zhongwen.indexOf('拾') - 1,zhongwen.indexOf('拾')) == '佰' ||  !zhongwen.substring(zhongwen.indexOf('拾') - 1,zhongwen.indexOf('拾'))? '壹' : zhongwen.substring(zhongwen.indexOf('拾') - 1,zhongwen.indexOf('拾')) }}
114
-                </span>
115
-                <span v-else>零</span>
196
+            <span v-else>零</span>
197
+          </span>
198
+          <span style="position: absolute; top: 235px; left: 290px">
199
+            <span v-if="zhongwen.indexOf('佰') > -1">
200
+              {{
201
+                zhongwen.substring(
202
+                  zhongwen.indexOf("佰") - 1,
203
+                  zhongwen.indexOf("佰")
204
+                )
205
+              }}
116 206
             </span>
117
-            <span  style="position: absolute;top:235px;left:350px">
118
-                <span v-if="zhongwen.indexOf('元') > -1 && zhongwen.substring(this.zhongwen.indexOf('元') - 1).substring(0,1)!= '拾'">
119
-                    {{ zhongwen.substring(zhongwen.indexOf('元') - 1,zhongwen.indexOf('元')) }}
120
-                </span>
121
-                <span v-else>零</span>
207
+            <span v-else>零</span>
208
+          </span>
209
+          <span style="position: absolute; top: 235px; left: 320px">
210
+            <span v-if="zhongwen.indexOf('拾') > -1">
211
+              {{
212
+                zhongwen.substring(
213
+                  zhongwen.indexOf("拾") - 1,
214
+                  zhongwen.indexOf("拾")
215
+                ) == "佰" ||
216
+                !zhongwen.substring(
217
+                  zhongwen.indexOf("拾") - 1,
218
+                  zhongwen.indexOf("拾")
219
+                ) ||
220
+                zhongwen.substring(
221
+                  zhongwen.indexOf("拾") - 1,
222
+                  zhongwen.indexOf("拾")
223
+                ) == "零"
224
+                  ? "壹"
225
+                  : zhongwen.substring(
226
+                      zhongwen.indexOf("拾") - 1,
227
+                      zhongwen.indexOf("拾")
228
+                    )
229
+              }}
122 230
             </span>
123
-            <span  style="position: absolute;top:235px;left:380px">
124
-                <span v-if="zhongwen.indexOf('角') > -1">
125
-                    {{ zhongwen.substring(zhongwen.indexOf('角') - 1,zhongwen.indexOf('角')) }}
126
-                </span>
127
-                <span v-else>零</span>
231
+            <span v-else>零</span>
232
+          </span>
233
+          <span style="position: absolute; top: 235px; left: 350px">
234
+            <span
235
+              v-if="
236
+                zhongwen.indexOf('元') > -1 &&
237
+                zhongwen
238
+                  .substring(this.zhongwen.indexOf('元') - 1)
239
+                  .substring(0, 1) != '拾' &&
240
+                zhongwen
241
+                  .substring(this.zhongwen.indexOf('元') - 1)
242
+                  .substring(0, 1) != '佰'
243
+              "
244
+            >
245
+              {{
246
+                zhongwen.substring(
247
+                  zhongwen.indexOf("元") - 1,
248
+                  zhongwen.indexOf("元")
249
+                )
250
+              }}
128 251
             </span>
129
-            <span  style="position: absolute;top:235px;left:415px">
130
-                <span v-if="zhongwen.indexOf('分') > -1">
131
-                    {{ zhongwen.substring(zhongwen.indexOf('分') - 1,zhongwen.indexOf('分')) }}
132
-                </span>
133
-                <span v-else>零</span>
252
+            <span v-else>零</span>
253
+          </span>
254
+          <span style="position: absolute; top: 235px; left: 380px">
255
+            <span v-if="zhongwen.indexOf('角') > -1">
256
+              {{
257
+                zhongwen.substring(
258
+                  zhongwen.indexOf("角") - 1,
259
+                  zhongwen.indexOf("角")
260
+                )
261
+              }}
134 262
             </span>
263
+            <span v-else>零</span>
264
+          </span>
265
+          <span style="position: absolute; top: 235px; left: 415px">
266
+            <span v-if="zhongwen.indexOf('分') > -1">
267
+              {{
268
+                zhongwen.substring(
269
+                  zhongwen.indexOf("分") - 1,
270
+                  zhongwen.indexOf("分")
271
+                )
272
+              }}
135 273
             </span>
136
-            <span style="position: absolute;top:235px;left:500px">{{ totalPrice.toFixed(2) }}</span>
137
-        </div>
138
-        <!-- <div style="position: absolute;top:300px;left:460px">现金:{{ list.psn_cash_money }}</div> -->
139
-        <div>
140
-            <div style="position: absolute;top:300px;left:120px">{{ org_name }}</div>
141
-            <div style="position: absolute;top:300px;left:460px">高慧裕</div>
274
+            <span v-else>零</span>
275
+          </span>
276
+        </span>
277
+        <span style="position: absolute; top: 235px; left: 500px">{{
278
+          totalPrice.toFixed(2)
279
+        }}</span>
280
+      </div>
281
+      <!-- <div style="position: absolute;top:300px;left:460px">现金:{{ list.psn_cash_money }}</div> -->
282
+      <div>
283
+        <div style="position: absolute; top: 300px; left: 120px">
284
+          {{ org_name }}
142 285
         </div>
286
+        <div style="position: absolute; top: 300px; left: 460px">高慧裕</div>
287
+      </div>
143 288
     </div>
289
+  </div>
144 290
 </template>
145 291
 
146 292
 
147 293
 <script>
148
-import { getInvoice } from '@/api/project/project'
149
-import { uParseTime } from '@/utils/tools'
294
+import { getInvoice } from "@/api/project/project";
295
+import { uParseTime } from "@/utils/tools";
150 296
 export default {
151
-    props:{
152
-        paramsObj:Object
153
-    },
154
-    data(){
155
-        return{
156
-            list:{},
157
-            printDate:'',
158
-            zhongwen:'',
159
-            totalPrice:0.0,
160
-            org_id:'',
161
-            org_name:'',
162
-            in_hosptial_time:'',
163
-            out_hosptial_time:'',
164
-            id_card_no:'',
165
-           number:'',
166
-          balance_accounts_type:"",
167
-          gend:"",
297
+  props: {
298
+    paramsObj: Object,
299
+  },
300
+  data() {
301
+    return {
302
+      list: {},
303
+      printDate: "",
304
+      zhongwen: "",
305
+      totalPrice: 0.0,
306
+      org_id: "",
307
+      org_name: "",
308
+      in_hosptial_time: "",
309
+      out_hosptial_time: "",
310
+      id_card_no: "",
311
+      number: "",
312
+      balance_accounts_type: "",
313
+      gend: "",
314
+      loading: true,
315
+    };
316
+  },
317
+  created() {
318
+    console.log("paramsObj", this.paramsObj);
319
+    let params = {
320
+      order_id: this.paramsObj.order_id,
321
+      patient_id: this.paramsObj.patient_id,
322
+    };
323
+    this.$nextTick(() => {
324
+      this.getInvoice(params);
325
+    })
326
+    
327
+    this.org_id = this.$store.getters.xt_user.org_id;
328
+    this.org_name = this.$store.getters.xt_user.org.org_name;
329
+  },
330
+  methods: {
331
+    getInvoice(params) {
332
+      getInvoice(params).then((res) => {
333
+        this.$nextTick(() => {
334
+          this.list = res.data.data;
335
+          this.totalPrice =
336
+            this.list.westernMedicineCostTotal +
337
+            this.list.checkCostTotal +
338
+            this.list.treatCostTotal +
339
+            this.list.bedCostTotal +
340
+            this.list.chineseTraditionalMedicineCostTotal +
341
+            this.list.laboratoryCostTotal +
342
+            this.list.operationCostTotal +
343
+            this.list.otherCostTotal +
344
+            this.list.materialCostTotal +
345
+            this.list.zhenChaCostTotal;
346
+          this.smalltoBIG(this.list.order.medfee_sumamt);
347
+          var data = new Date(res.data.data.date * 1000);
348
+          var month =
349
+            data.getMonth() < 9
350
+              ? "0" + (data.getMonth() + 1)
351
+              : data.getMonth() + 1;
352
+          var date =
353
+            data.getDate() <= 9 ? "0" + data.getDate() : data.getDate();
354
+          this.printDate = data.getFullYear() + "-" + month + "-" + date;
355
+          if (this.list.his.id > 0) {
356
+            this.in_hosptial_time = this.getTime();
357
+            this.out_hosptial_time = this.list.order.setl_time.split(" ")[0];
358
+          } else {
359
+            this.in_hosptial_time =
360
+              this.list.his_hospital_record.in_hosptial_time.split(" ")[0];
361
+            this.out_hosptial_time =
362
+              this.list.his_hospital_record.out_hosptial_time.split(" ")[0];
363
+          }
168 364
 
169
-        }
170
-    },
171
-    created(){
172
-        console.log('paramsObj',this.paramsObj)
173
-        let params = {
174
-            order_id: this.paramsObj.order_id,
175
-            patient_id: this.paramsObj.patient_id,
176
-        }
177
-        this.getInvoice(params)
178
-        // var data = new Date();
179
-        // var month =data.getMonth() < 9 ? "0" + (data.getMonth() + 1) : data.getMonth() + 1;
180
-        // var date = data.getDate() <= 9 ? "0" + data.getDate() : data.getDate();
181
-        // this.printDate = data.getFullYear() + "-" + month + "-" + date;
182
-        // this.smalltoBIG(982732.21)
183
-        this.org_id = this.$store.getters.xt_user.org_id
184
-        this.org_name = this.$store.getters.xt_user.org.org_name
365
+          this.id_card_no = this.list.his_hospital_record.id_card_no;
366
+          this.number = this.list.his_hospital_record.number;
367
+          this.balance_accounts_type =
368
+            this.list.his_hospital_record.balance_accounts_type;
369
+          this.gend = this.list.his_hospital_record.gend;
370
+          this.loading = false;  
371
+        })                                                                                                    
372
+      });
373
+     
185 374
     },
186
-    methods:{
187
-        getInvoice(params){
188
-            getInvoice(params).then((res) => {
189
-                // console.log('res',res)
190
-                this.list = res.data.data
191
-                console.log('res',this.list)
192
-                this.totalPrice = this.list.westernMedicineCostTotal + this.list.checkCostTotal + this.list.treatCostTotal + this.list.bedCostTotal + this.list.chineseTraditionalMedicineCostTotal +
193
-                                    this.list.laboratoryCostTotal + this.list.operationCostTotal + this.list.otherCostTotal + this.list.materialCostTotal + this.list.zhenChaCostTotal
194
-                this.smalltoBIG(this.list.order.medfee_sumamt)
195
-                var data = new Date(res.data.data.date * 1000);
196
-                var month =data.getMonth() < 9 ? "0" + (data.getMonth() + 1) : data.getMonth() + 1;
197
-                var date = data.getDate() <= 9 ? "0" + data.getDate() : data.getDate();
198
-                this.printDate = data.getFullYear() + "-" + month + "-" + date;
199
-                if(this.list.his.id > 0){
200
-                  this.in_hosptial_time = this.getTime()
201
-                  this.out_hosptial_time = this.list.order.setl_time.split(' ')[0]
202
-                }else{
203
-                  this.in_hosptial_time = this.list.his_hospital_record.in_hosptial_time.split(' ')[0]
204
-                  this.out_hosptial_time = this.list.his_hospital_record.out_hosptial_time.split(' ')[0]
205
-                }
206
-
207
-              this.id_card_no = this.list.his_hospital_record.id_card_no
208
-              this.number = this.list.his_hospital_record.number
209
-              this.balance_accounts_type = this.list.his_hospital_record.balance_accounts_type
210
-              this.gend= this.list.his_hospital_record.gend
211
-            })
212
-        },
213
-        smalltoBIG(n) {
214
-            // let fraction = ['角', '分'];
215
-            // let digit = ['零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖'];
216
-            // let unit = [['元.', '万,', '亿,'], ["元",'拾', '佰', '仟']];
217
-            // let head = price < 0 ? '欠' : '';
218
-            // price = Math.abs(price);
219
-            // let upper = '';
220
-            // for (let i = 0; i < fraction.length; i++) {
221
-            // upper += (digit[Math.floor(price * 10 * Math.pow(10, i)) % 10] + fraction[i]).replace(/零./, '');
222
-            // }
223
-            // upper = upper || '整';
224
-            // price = Math.floor(price);
225
-            // for (let i = 0; i < unit[0].length && price > 0; i++) {
226
-            // let p = '';
227
-            // for (let j = 0; j < unit[1].length && price > 0; j++) {
228
-            //     p = digit[price % 10] + unit[1][j] + p;
229
-            //     price = Math.floor(price / 10);
230
-            // }
231
-            // upper = p.replace(/(零.)*零$/, '').replace(/^$/, '零') + unit[0][i] + upper;
232
-            // }
233
-            // this.zhongwen = head + upper.replace(/(零.)*零圆/, '圆').replace(/(零.)+/g, '零').replace(/^整$/, '零圆整')
234
-            // console.log('6666',head + upper.replace(/(零.)*零圆/, '圆').replace(/(零.)+/g, '零').replace(/^整$/, '零圆整'))
235
-            if (!/^(0|[1-9]\d*)(\.\d+)?$/.test(n)){
236
-                return "数据非法";  //判断数据是否大于0
237
-            }
375
+    smalltoBIG(n) {
376
+      // let fraction = ['角', '分'];
377
+      // let digit = ['零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖'];
378
+      // let unit = [['元.', '万,', '亿,'], ["元",'拾', '佰', '仟']];
379
+      // let head = price < 0 ? '欠' : '';
380
+      // price = Math.abs(price);
381
+      // let upper = '';
382
+      // for (let i = 0; i < fraction.length; i++) {
383
+      // upper += (digit[Math.floor(price * 10 * Math.pow(10, i)) % 10] + fraction[i]).replace(/零./, '');
384
+      // }
385
+      // upper = upper || '整';
386
+      // price = Math.floor(price);
387
+      // for (let i = 0; i < unit[0].length && price > 0; i++) {
388
+      // let p = '';
389
+      // for (let j = 0; j < unit[1].length && price > 0; j++) {
390
+      //     p = digit[price % 10] + unit[1][j] + p;
391
+      //     price = Math.floor(price / 10);
392
+      // }
393
+      // upper = p.replace(/(零.)*零$/, '').replace(/^$/, '零') + unit[0][i] + upper;
394
+      // }
395
+      // this.zhongwen = head + upper.replace(/(零.)*零圆/, '圆').replace(/(零.)+/g, '零').replace(/^整$/, '零圆整')
396
+      // console.log('6666',head + upper.replace(/(零.)*零圆/, '圆').replace(/(零.)+/g, '零').replace(/^整$/, '零圆整'))
397
+      if (!/^(0|[1-9]\d*)(\.\d+)?$/.test(n)) {
398
+        return "数据非法"; //判断数据是否大于0
399
+      }
238 400
 
239
-            var unit = "仟佰拾亿仟佰拾万仟佰拾元角分", str = "";
240
-            n += "00";
401
+      var unit = "仟佰拾亿仟佰拾万仟佰拾元角分",
402
+        str = "";
403
+      n += "00";
241 404
 
242
-            var indexpoint = n.indexOf('.');  // 如果是小数,截取小数点前面的位数
405
+      var indexpoint = n.indexOf("."); // 如果是小数,截取小数点前面的位数
243 406
 
244
-            if (indexpoint >= 0){
407
+      if (indexpoint >= 0) {
408
+        n = n.substring(0, indexpoint) + n.substr(indexpoint + 1, 2); // 若为小数,截取需要使用的unit单位
409
+      }
245 410
 
246
-                n = n.substring(0, indexpoint) + n.substr(indexpoint+1, 2);   // 若为小数,截取需要使用的unit单位
247
-            }
411
+      unit = unit.substr(unit.length - n.length); // 若为整数,截取需要使用的unit单位
412
+      for (var i = 0; i < n.length; i++) {
413
+        str += "零壹贰叁肆伍陆柒捌玖".charAt(n.charAt(i)) + unit.charAt(i); //遍历转化为大写的数字
414
+      }
248 415
 
249
-            unit = unit.substr(unit.length - n.length);  // 若为整数,截取需要使用的unit单位
250
-            for (var i=0; i < n.length; i++){
251
-                str += "零壹贰叁肆伍陆柒捌玖".charAt(n.charAt(i)) + unit.charAt(i);  //遍历转化为大写的数字
252
-            }
253
-
254
-            this.zhongwen =  str.replace(/零(仟|佰|拾|角)/g, "零").replace(/(零)+/g, "零").replace(/零(万|亿|元)/g, "$1").replace(/(亿)万|壹(拾)/g, "$1$2").replace(/^元零?|零分/g, "").replace(/元$/g, "元整");
255
-            console.log(this.zhongwen,'中文')
256
-            console.log(this.zhongwen.substring(this.zhongwen.indexOf('拾') - 1,this.zhongwen.indexOf('拾')),'op')
257
-        },
258
-        getTime(value, temp) {
259
-            if (value == 0) {
260
-                return ''
261
-            }
262
-            if (value != undefined) {
263
-                return uParseTime(value, temp)
264
-            }
265
-            return ''
266
-        },
416
+      this.zhongwen = str
417
+        .replace(/零(仟|佰|拾|角)/g, "零")
418
+        .replace(/(零)+/g, "零")
419
+        .replace(/零(万|亿|元)/g, "$1")
420
+        .replace(/(亿)万|壹(拾)/g, "$1$2")
421
+        .replace(/^元零?|零分/g, "")
422
+        .replace(/元$/g, "元整");
423
+      console.log(this.zhongwen, "中文");
424
+      console.log(
425
+        this.zhongwen.substring(
426
+          this.zhongwen.indexOf("拾") - 1,
427
+          this.zhongwen.indexOf("拾")
428
+        ),
429
+        "op"
430
+      );
267 431
     },
268
-    watch:{
269
-        paramsObj:{//深度监听,可监听到对象、数组的变化
270
-            handler(val, oldVal){
271
-                let params = {
272
-                    order_id: val.order_id,
273
-                    patient_id: val.patient_id,
274
-                }
275
-                this.getInvoice(params)
276
-
277
-            },
278
-            deep:true
279
-        }
280
-    }
281
-}
432
+    getTime(value, temp) {
433
+      if (value == 0) {
434
+        return "";
435
+      }
436
+      if (value != undefined) {
437
+        return uParseTime(value, temp);
438
+      }
439
+      return "";
440
+    },
441
+  },
442
+  watch: {
443
+    paramsObj: {
444
+      //深度监听,可监听到对象、数组的变化
445
+      handler(val, oldVal) {
446
+        let params = {
447
+          order_id: val.order_id,
448
+          patient_id: val.patient_id,
449
+        };
450
+        this.getInvoice(params);
451
+      },
452
+      deep: true,
453
+    },
454
+  },
455
+};
282 456
 </script>

Diff onderdrukt omdat het te groot bestand
+ 1034 - 804
src/xt_pages/hospitalStation/summary.vue


+ 3 - 3
src/xt_pages/hospitalStation/template/printFive.vue Bestand weergeven

@@ -18,15 +18,15 @@
18 18
           <div style="display:flex;">
19 19
             <div style="display: flex;flex-direction: column-reverse;">开具日期</div>
20 20
             <div class="underLine" style="width:60px;">
21
-              {{ getTime(item.ctime) ? getTime(item.ctime).split(' ')[0].slice(0, 4) : '' }}
21
+              {{ getTime(item.record_date) ? getTime(item.record_date).split(' ')[0].slice(0, 4) : '' }}
22 22
             </div>
23 23
             <div style="display: flex;flex-direction: column-reverse;">年</div>
24 24
             <div class="underLine" style="width:60px;">
25
-              {{ getTime(item.ctime) ? getTime(item.ctime).split(' ')[0].slice(5, 7) : '' }}
25
+              {{ getTime(item.record_date) ? getTime(item.record_date).split(' ')[0].slice(5, 7) : '' }}
26 26
             </div>
27 27
             <div style="display: flex;flex-direction: column-reverse;">月</div>
28 28
             <div class="underLine" style="width:60px;">
29
-              {{ getTime(item.ctime) ? getTime(item.ctime).split(' ')[0].slice(8, 11) : '' }}
29
+              {{ getTime(item.record_date) ? getTime(item.record_date).split(' ')[0].slice(8, 11) : '' }}
30 30
             </div>
31 31
             <div style="display: flex;flex-direction: column-reverse;">日</div>
32 32
           </div>

+ 17 - 3
src/xt_pages/outpatientCharges/allListPrint.vue Bestand weergeven

@@ -13,8 +13,8 @@
13 13
     </template>
14 14
 
15 15
     <div class='dialysisPage' style="padding-top:40px;">
16
-      <printOne  v-if="org_id != 10215 && org_id != 0 && org_id !=9671" :list="list" :patient="patient" :order="order" :admin="admin" :hospital="his_hospital"></printOne>
17
-      <summary-print v-if="org_id == 10215|| org_id == 0 || org_id ==9671" :list="list" :patient="patient" :order="order" :admin="admin" :hospital="his_hospital"></summary-print>
16
+      <printOne  v-if="org_id != 10215 && org_id != 0 && org_id !=9671&&org_id !=9675" :list="list" :patient="patient" :order="order" :admin="admin" :hospital="his_hospital"></printOne>
17
+      <summary-print v-if="org_id == 10215|| org_id == 0 || org_id ==9671 ||org_id ==9675" :list="list" :patient="patient" :order="order" :admin="admin" :hospital="his_hospital"></summary-print>
18 18
 
19 19
 <!--      <list-print-two :list="list" :patient="patient" :order="order" :admin="admin" :hospital="his_hospital"></list-print-two>-->
20 20
     </div>
@@ -358,15 +358,29 @@
358 358
 
359 359
       },
360 360
       printThisPage() {
361
-
362 361
         const style =
363 362
           '@media print {.allListTitle{font-size: 24px;text-align: center;font-weight: bold;margin-bottom: 10px;}.allListInfo{display: flex;font-size: 16px;justify-content: space-between;margin: 10px 0;} .allListTable{width: 100%;text-align: center;border-collapse: collapse;line-height: 20px;font-size: 14px;border-color: #000;text-align:left;}.allListTable tr td {padding: 0 5px;}.tableBottom{font-size: 16px;display: flex;margin-top: 20px;}.tableBottomOne{margin-right: 40px;}}'
363
+         const style1 =
364
+          '@media print {.allListTitle{font-size: 24px;text-align: center;font-weight: bold;margin-bottom: 10px;}.allListInfo{display: flex;font-size: 16px;justify-content: space-between;margin: 10px 0;} .allListTable{width: 100%;text-align: center;border-collapse: collapse;line-height: 20px;font-size: 14px;border-color: #000;text-align:left;} .allListTable tr td {padding: 0 5px;} .allListTable .allListTable_1{border: none;width: 100%;text-align: center;border-collapse: collapse;line-height: 20px;font-size: 14px;border-color: #000;text-align:left;} .allListTable_1 tr{page-break-inside:avoid;} .allListTable_1 tr td {padding: 0 5px;border: 1px solid #000;} .tableBottom{font-size: 16px;display: flex;margin-top: 20px;}.tableBottomOne{margin-right: 40px;}}'
365
+        
366
+        if(this.org_id == 10215 || this.org_id == 0 ||this.org_id == 9675){
367
+          printJS({
368
+          printable: 'allList-print',
369
+          type: 'html',
370
+          style: style1,
371
+          scanStyles: false
372
+        })
373
+        }else{
364 374
         printJS({
365 375
           printable: 'allList-print',
366 376
           type: 'html',
367 377
           style: style,
368 378
           scanStyles: false
369 379
         })
380
+        }
381
+
382
+        
383
+        
370 384
 
371 385
         // if (this.org_template_info.template_id == 1) {
372 386
         //   printJS({

+ 187 - 152
src/xt_pages/outpatientCharges/allListTemplate/summaryPrint.vue Bestand weergeven

@@ -1,157 +1,178 @@
1 1
 <template>
2 2
   <div id="allList-print" class="allList-print">
3
-    <div class="allListTitle">
4
-      {{ $store.getters.xt_user.org.org_name }}汇总清单
5
-    </div>
6
-    <div class="allListInfo" style="border-top: 1px solid;">
7
-      <div>科别:门诊</div>
8
-      <div>床号:</div>
9
-      <div>门诊号:{{ order.mdtrt_id }}</div>
10
-      <div>姓名:{{ patient.name }}</div>
11
-    </div>
12
-
13
-    <div class="allListInfo" style="border-bottom: 1px solid;">
14
-      <div>预交款:</div>
15
-      <div>总费用:{{ order.medfee_sumamt }}</div>
16
-      <div>门诊日期:{{ hospital.in_hosptial_time? hospital.in_hosptial_time.split(' ')[0]:''}}</div>
17
-    </div>
18
-
19
-    <div class="allListInfo">
20
-      <div>
21
-        西药:&nbsp;&nbsp;&nbsp;{{
22
-          order.westernMedicineCostTotal? order.westernMedicineCostTotal.toFixed(2)  : ""
23
-        }}
24
-      </div>
25
-      <div>
26
-        中成药:{{
27
-          order.chineseTraditionalMedicineCostTotal
28
-            ? order.chineseTraditionalMedicineCostTotal.toFixed(2)
29
-              : ""
30
-        }}
31
-      </div>
32
-      <div>中草药:</div>
33
-    </div>
34
-
35
-    <div class="allListInfo">
36
-      <div>检查费:{{ order.checkCostTotal ? order.checkCostTotal.toFixed(2)  : "" }}</div>
37
-      <div>输氧费:</div>
38
-      <div>
39
-        手术费:{{ order.operationCostTotal ? order.operationCostTotal.toFixed(2)  : "" }}
40
-      </div>
41
-    </div>
42
-
43
-    <div class="allListInfo">
44
-      <div>
45
-        化验费:{{ order.laboratoryCostTotal ? order.laboratoryCostTotal.toFixed(2)  : "" }}
46
-      </div>
47
-      <div>输血费:</div>
48
-      <div>
49
-        诊察费:{{ order.zhenChaCostTotal ? order.zhenChaCostTotal.toFixed(2)  : "" }}
50
-      </div>
51
-    </div>
52
-
53
-    <div class="allListInfo">
54
-      <div>治疗费:{{ order.treatCostTotal ? order.treatCostTotal.toFixed(2)  : "" }}</div>
55
-      <div>护理费:</div>
56
-      <div>床位费:{{ order.bedCostTotal ? order.bedCostTotal.toFixed(2)  : "" }}</div>
57
-    </div>
58
-    <div class="allListInfo">
59
-      <div>麻醉费:</div>
60
-      <div>
61
-        材料费:{{ order.materialCostTotal ? order.materialCostTotal.toFixed(2)  : "" }}
62
-      </div>
63
-      <div>其他:{{ order.otherCostTotal ? order.otherCostTotal.toFixed(2)  : "" }}</div>
64
-    </div>
65
-    <!--    <div style="display:flex;justify-content: space-between;">-->
66
-    <!--          <div style="position: absolute;top:160px;left:40px">西药</div>-->
67
-    <!--          <div style="position: absolute;top:160px;left:110px">{{ list.westernMedicineCostTotal }}</div>-->
68
-    <!--          <div style="position: absolute;top:160px;left:180px">检查费</div>-->
69
-    <!--          <div style="position: absolute;top:160px;left:260px">{{ list.checkCostTotal }}</div>-->
70
-    <!--          <div style="position: absolute;top:160px;left:340px">化验费</div>-->
71
-    <!--          <div style="position: absolute;top:160px;left:420px">{{ list.treatCostTotal }}</div>-->
72
-    <!--          <div style="position: absolute;top:160px;left:500px">治疗费</div>-->
73
-    <!--          <div style="position: absolute;top:160px;left:580px">{{ list.bedCostTotal }}</div>-->
74
-    <!--          <div style="position: absolute;top:160px;left:500px">麻醉费</div>-->
75
-    <!--          <div style="position: absolute;top:160px;left:580px">{{ list.bedCostTotal }}</div>-->
76
-    <!--    </div>-->
77
-    <!--    <div style="display:flex;justify-content: space-between;">-->
78
-    <!--      <div style="position: absolute;top:190px;left:40px">中成药</div>-->
79
-    <!--      <div style="position: absolute;top:190px;left:110px">{{ list.chineseTraditionalMedicineCostTotal }}</div>-->
80
-    <!--      <div style="position: absolute;top:190px;left:180px">输氧费</div>-->
81
-    <!--      <div style="position: absolute;top:190px;left:260px">{{ list.laboratoryCostTotal }}</div>-->
82
-    <!--      <div style="position: absolute;top:190px;left:340px">输血费</div>-->
83
-    <!--      <div style="position: absolute;top:190px;left:420px">{{ list.operationCostTotal }}</div>-->
84
-    <!--      <div style="position: absolute;top:190px;left:500px">护理费</div>-->
85
-    <!--      <div style="position: absolute;top:190px;left:580px">{{ list.otherCostTotal }}</div>-->
86
-
87
-    <!--      <div style="position: absolute;top:160px;left:500px">材料费</div>-->
88
-    <!--      <div style="position: absolute;top:160px;left:580px">{{ list.bedCostTotal }}</div>-->
89
-    <!--    </div>-->
90
-    <!--    <div style="display:flex;justify-content: space-between;">-->
91
-    <!--      <div style="position: absolute;top:210px;left:40px">中草药</div>-->
92
-    <!--      <div style="position: absolute;top:210px;left:110px"></div>-->
93
-    <!--      <div style="position: absolute;top:210px;left:180px">手术费</div>-->
94
-    <!--      <div style="position: absolute;top:210px;left:260px"></div>-->
95
-    <!--      <div style="position: absolute;top:210px;left:340px">诊察费</div>-->
96
-    <!--      <div style="position: absolute;top:210px;left:420px">{{ list.materialCostTotal }}</div>-->
97
-    <!--      <div style="position: absolute;top:210px;left:500px">床位费</div>-->
98
-    <!--      <div style="position: absolute;top:210px;left:580px"></div>-->
99
-    <!--      <div style="position: absolute;top:160px;left:500px">其他</div>-->
100
-    <!--      <div style="position: absolute;top:160px;left:580px">{{ list.bedCostTotal }}</div>-->
101
-    <!--    </div>-->
102
-
103
-    <table class="allListTable" border="1">
104
-      <tr>
105
-        <td style="width: 10%">费用类别</td>
106
-        <td style="width: 35%">项目名称</td>
107
-        <td style="width: 5%">单位</td>
108
-        <td style="width: 10%">数量</td>
109
-        <td style="width: 10%">单价</td>
110
-        <td style="width: 10%">金额</td>
111
-        <td style="width: 10%">医保类型</td>
112
-      </tr>
113
-      <template v-for="(item, index) in list">
114
-        <tr v-if="item.is_total == 2">
115
-          <td style="width: 10%">{{ item.med_chrgitm_type }}</td>
116
-          <td
117
-            style="
118
-              width: 35%;
119
-              white-space: nowrap;
120
-              overflow: hidden;
121
-              text-overflow: ellipsis;
122
-            "
3
+    <table
4
+      class="allListTable"
5
+      border="0"
6
+      cellspacing="0"
7
+      style="font-size: 14px"
8
+      align="center"
9
+    >
10
+      <THEAD
11
+        style="
12
+          display: table-header-group;
13
+          font-weight: bold;
14
+        "
15
+      >
16
+        <TR style="border-bottom: 1px solid">
17
+          <TD colspan="4" align="center" style="font-size: 20px">
18
+            {{ $store.getters.xt_user.org.org_name }}汇总清单
19
+          </TD>
20
+        </TR>
21
+        <TR>
22
+          <TD colspan="1">科别:门诊</TD>
23
+          <TD width="130">床号:</TD>
24
+          <TD>门诊号:{{ order.mdtrt_id }}</TD>
25
+          <TD>姓名:{{ patient.name }}</TD>
26
+        </TR>
27
+        <TR style="border-bottom: 1px solid">
28
+          <TD colspan="2"> 预交款:</TD>
29
+          <TD>总费用:{{ order.medfee_sumamt }} </TD>
30
+          <TD
31
+            >门诊日期:{{
32
+              hospital.in_hosptial_time
33
+                ? hospital.in_hosptial_time.split(" ")[0]
34
+                : ""
35
+            }}</TD
36
+          >
37
+        </TR>
38
+        <TR>
39
+          <TD colspan="2">
40
+            西药:&nbsp;&nbsp;&nbsp;{{
41
+              order.westernMedicineCostTotal
42
+                ? order.westernMedicineCostTotal.toFixed(2)
43
+                : ""
44
+            }}</TD
45
+          >
46
+          <TD
47
+            >中成药:{{
48
+              order.chineseTraditionalMedicineCostTotal
49
+                ? order.chineseTraditionalMedicineCostTotal.toFixed(2)
50
+                : ""
51
+            }}</TD
52
+          >
53
+          <TD>中草药:</TD>
54
+        </TR>
55
+        <TR>
56
+          <TD colspan="2">
57
+            检查费:{{
58
+              order.checkCostTotal ? order.checkCostTotal.toFixed(2) : ""
59
+            }}</TD
60
+          >
61
+          <TD>输氧费:</TD>
62
+          <TD
63
+            >手术费:{{
64
+              order.operationCostTotal
65
+                ? order.operationCostTotal.toFixed(2)
66
+                : ""
67
+            }}</TD
68
+          >
69
+        </TR>
70
+        <TR>
71
+          <TD colspan="2"
72
+            >化验费:{{
73
+              order.laboratoryCostTotal
74
+                ? order.laboratoryCostTotal.toFixed(2)
75
+                : ""
76
+            }}</TD
77
+          >
78
+          <TD>输血费:</TD>
79
+          <TD
80
+            >诊察费:{{
81
+              order.zhenChaCostTotal ? order.zhenChaCostTotal.toFixed(2) : ""
82
+            }}</TD
83
+          >
84
+        </TR>
85
+        <TR>
86
+          <TD colspan="2"
87
+            >治疗费:{{
88
+              order.treatCostTotal ? order.treatCostTotal.toFixed(2) : ""
89
+            }}</TD
90
+          >
91
+          <TD>护理费:</TD>
92
+          <TD
93
+            >床位费:{{
94
+              order.bedCostTotal ? order.bedCostTotal.toFixed(2) : ""
95
+            }}</TD
123 96
           >
124
-            {{ item.name }}{{ item.spec }}
125
-          </td>
126
-          <td style="width: 5%">{{ item.unit }}</td>
127
-          <td style="width: 10%; text-align: right">{{ item.count }}</td>
128
-          <td style="width: 10%; text-align: right">
129
-            {{ item.price.toFixed(4) }}
130
-          </td>
131
-          <td style="width: 10%; text-align: right">
132
-            {{ (item.price * item.count).toFixed(2) }}
133
-          </td>
134
-          <td style="width: 10%">{{ item.medicine_insurance_kind }}</td>
135
-        </tr>
136
-        <tr v-if="item.is_total == 1">
137
-          <td style="width: 10%"></td>
138
-          <td
139
-            style="
140
-              width: 35%;
141
-              white-space: nowrap;
142
-              overflow: hidden;
143
-              text-overflow: ellipsis;
144
-            "
97
+        </TR>
98
+        <TR>
99
+          <TD colspan="2">麻醉费:</TD>
100
+          <TD
101
+            >材料费:{{
102
+              order.materialCostTotal ? order.materialCostTotal.toFixed(2) : ""
103
+            }}</TD
145 104
           >
146
-            合计
147
-          </td>
148
-          <td style="width: 5%"></td>
149
-          <td style="width: 10%; text-align: right"></td>
150
-          <td style="width: 10%; text-align: right"></td>
151
-          <td style="width: 10%; text-align: right">{{ item.total }}</td>
152
-          <td style="width: 10%"></td>
153
-        </tr>
154
-      </template>
105
+          <TD
106
+            >其他:{{
107
+              order.otherCostTotal ? order.otherCostTotal.toFixed(2) : ""
108
+            }}</TD
109
+          >
110
+        </TR>
111
+      </THEAD>
112
+
113
+      <TBODY style="text-align: center">
114
+        <TR>
115
+          <TD colspan="4">
116
+            <Table class="allListTable_1" border="1">
117
+              <TR>
118
+                <TH width="70"> 费用类别 </TH>
119
+                <TH width="70"> 项目名称 </TH>
120
+                <TH width="70">单位</TH>
121
+                <TH width="70">数量</TH>
122
+                <TH width="70">单价</TH>
123
+                <TH width="70">金额</TH>
124
+                <TH width="70">医保类型</TH>
125
+              </TR>
126
+              <template v-for="(item, index) in list">
127
+                <tr v-if="item.is_total == 2">
128
+                  <td style="width: 10%">{{ item.med_chrgitm_type }}</td>
129
+                  <td
130
+                    style="
131
+                      width: 35%;
132
+                      white-space: nowrap;
133
+                      overflow: hidden;
134
+                      text-overflow: ellipsis;
135
+                    "
136
+                  >
137
+                    {{ item.name }}{{ item.spec }}
138
+                  </td>
139
+                  <td style="width: 5%">{{ item.unit }}</td>
140
+                  <td style="width: 10%; text-align: right">
141
+                    {{ item.count }}
142
+                  </td>
143
+                  <td style="width: 10%; text-align: right">
144
+                    {{ item.price.toFixed(4) }}
145
+                  </td>
146
+                  <td style="width: 10%; text-align: right">
147
+                    {{ (item.price * item.count).toFixed(2) }}
148
+                  </td>
149
+                  <td style="width: 10%">{{ item.medicine_insurance_kind }}</td>
150
+                </tr>
151
+                <tr v-if="item.is_total == 1">
152
+                  <td style="width: 10%"></td>
153
+                  <td
154
+                    style="
155
+                      width: 35%;
156
+                      white-space: nowrap;
157
+                      overflow: hidden;
158
+                      text-overflow: ellipsis;
159
+                    "
160
+                  >
161
+                    合计
162
+                  </td>
163
+                  <td style="width: 5%"></td>
164
+                  <td style="width: 10%; text-align: right"></td>
165
+                  <td style="width: 10%; text-align: right"></td>
166
+                  <td style="width: 10%; text-align: right">
167
+                    {{ item.total }}
168
+                  </td>
169
+                  <td style="width: 10%"></td>
170
+                </tr>
171
+              </template>
172
+            </Table>
173
+          </TD>
174
+        </TR>
175
+      </TBODY>
155 176
     </table>
156 177
   </div>
157 178
 </template>
@@ -229,7 +250,6 @@ export default {
229 250
   },
230 251
   watch: {
231 252
     list: {
232
-     
233 253
       handler(newVal) {
234 254
         this.getPage();
235 255
       },
@@ -264,7 +284,7 @@ export default {
264 284
   margin: 10px 0;
265 285
 }
266 286
 
267
-.allListInfo div{
287
+.allListInfo div {
268 288
   min-width: 200px;
269 289
 }
270 290
 
@@ -282,6 +302,20 @@ export default {
282 302
   padding: 0 5px;
283 303
 }
284 304
 
305
+.allListTable_1 {
306
+  width: 100%;
307
+  text-align: center;
308
+  border-collapse: collapse;
309
+  line-height: 20px;
310
+  font-size: 14px;
311
+  border-color: #000;
312
+  text-align: left;
313
+}
314
+
315
+.allListTable_1 tr td {
316
+  padding: 0 5px;
317
+}
318
+
285 319
 .tableBottom {
286 320
   font-size: 16px;
287 321
   display: flex;
@@ -291,4 +325,5 @@ export default {
291 325
 .tableBottomOne {
292 326
   margin-right: 40px;
293 327
 }
328
+
294 329
 </style>

+ 1 - 1
src/xt_pages/outpatientCharges/components/chargeDialog.vue Bestand weergeven

@@ -148,7 +148,7 @@
148 148
           // {value: 2, label: '银行卡'},
149 149
           // {value: 3, label: '微信'},
150 150
           // {value: 4, label: '支付宝'},
151
-          {value: 5, label: '医保卡'},
151
+          {value: 4, label: '医保卡'},
152 152
 
153 153
         ],
154 154
         total:"",

+ 1 - 3
src/xt_pages/outpatientCharges/components/registerDialog.vue Bestand weergeven

@@ -716,11 +716,9 @@
716 716
         this.form.diagnosis = this.diagnoses[0].id
717 717
         this.form.id_card_type = 2
718 718
         this.form.certificates = 1
719
-
720
-        if (this.$store.getters.xt_user.org_id == 10188  || this.$store.getters.xt_user.org_id == 10217){
719
+        if (this.$store.getters.xt_user.org_id == 10188  || this.$store.getters.xt_user.org_id == 10217 || this.$store.getters.xt_user.org_id == 10191){
721 720
           this.form.id_card_type = 1
722 721
         }
723
-
724 722
         if (departments.length > 0) {
725 723
           this.form.department = departments[0].id
726 724
         }

+ 4 - 1
src/xt_pages/outpatientCharges/components/registerDialog9504.vue Bestand weergeven

@@ -241,7 +241,10 @@
241 241
         },{
242 242
           value: 2,
243 243
           label: '身份证'
244
-        }],
244
+        },{
245
+          value: 4,
246
+          label: '电子凭证'
247
+        },],
245 248
         settlement: [
246 249
           {value: 1, label: '医保'},
247 250
           {value: 2, label: '自费'},

+ 1 - 1
src/xt_pages/outpatientCharges/costComparison.vue Bestand weergeven

@@ -476,7 +476,7 @@ c<template>
476 476
             insutype: this.insutype,
477 477
             clr_type: this.clr_type,
478 478
             clr_optins:this.query_clr_org,
479
-            admin_user_id:that.$store.getters.xt_user.user.id,
479
+            admin_user_id:this.$store.getters.xt_user.user.id,
480 480
           }
481 481
           var that = this
482 482
             axios.get('http://127.0.0.1:9532/api/checkaccount/get', {

+ 7 - 7
src/xt_pages/outpatientCharges/listPrint.vue Bestand weergeven

@@ -14,11 +14,11 @@
14 14
     </template>
15 15
 
16 16
     <div class='dialysisPage' style="padding-top:40px;">
17
-      <printOne v-if="org_id != 10106&&org_id != 10215&&org_id != 10265 && org_id != 0" :list="list" :patient="patient" :order="order" :admin="admin"></printOne>
17
+      <printOne v-if="org_id != 10106&&org_id != 10215&&org_id != 10265 && org_id != 0 && org_id!=9675" :list="list" :patient="patient" :order="order" :admin="admin"></printOne>
18 18
       <printTwo v-if="org_id == 10106 && this.paramsObj.balance_accounts_type != 2" :info="info" :order_infos="order_infos" :p_admin="p_admin" :charge_admin="charge_admin"></printTwo>
19 19
       <print-three v-if="org_id == 10106 && this.paramsObj.balance_accounts_type == 2" :info="info" :order_infos="order_infos" :p_admin="p_admin" :charge_admin="charge_admin"></print-three>
20
-      <list-print-two v-if="org_id == 10215 " :list="list" :patient="patient" :order="order" :admin="admin"></list-print-two>
21
-      <print-two10265  v-if="org_id == 10265 || org_id == 0" :list="list" :patient="patient" :order="order" :admin="admin" :hospital_record="hospital_record"></print-two10265>
20
+      <list-print-two v-if="org_id == 10215 || org_id == 0 || org_id==9675" :list="list" :patient="patient" :order="order" :admin="admin"></list-print-two>
21
+      <print-two10265  v-if="org_id == 10265 " :list="list" :patient="patient" :order="order" :admin="admin" :hospital_record="hospital_record"></print-two10265>
22 22
     </div>
23 23
   </div>
24 24
 </template>
@@ -152,7 +152,7 @@
152 152
               }
153 153
 
154 154
               this.list.sort((a,b) => a.sort < b.sort ? 1 : a.sort > b.sort ? -1 : 0)
155
-              console.log(this.list)
155
+              console.log(this.list,'sssss')
156 156
 
157 157
             }else{
158 158
               this.order = response.data.data.order
@@ -567,9 +567,9 @@
567 567
 
568 568
       printThisPage() {
569 569
         if(this.org_id != 10106){
570
-          if(this.org_id == 10215){
570
+          if(this.org_id == 10215 || this.org_id == 0|| this.org_id == 9675){
571 571
             const style =
572
-                '@media print {.allListTitle{font-size: 24px;text-align: center;font-weight: bold;margin-bottom: 10px;}.allListInfo{display: flex;font-size: 16px;justify-content: space-between;margin: 10px 0;} .allListTable{width: 100%;text-align: center;border-collapse: collapse;line-height: 20px;font-size: 14px;border-color: #000;text-align:left;}.allListTable tr td {padding: 0 5px;}.tableBottom{font-size: 16px;display: flex;margin-top: 20px;}.tableBottomOne{margin-right: 40px;}}'
572
+                '@media print {.allListTitle{font-size: 24px;text-align: center;font-weight: bold;margin-bottom: 10px;}.allListInfo{display: flex;font-size: 16px;justify-content: space-between;margin: 10px 0;} .listTable{width: 100%;text-align: center;border-collapse: collapse;line-height: 20px;font-size: 14px;border-color: #000;text-align:left;}  .listTable tr td {padding: 0 5px;}.tableBottom{font-size: 16px;display: flex;margin-top: 10px;}.tableBottomOne{margin-right: 40px;} .allListTable{border: none;width: 100%;text-align: center;border-collapse: collapse;line-height: 20px;font-size: 14px;border-color: #000;text-align:left;} .allListTable tr{page-break-inside:avoid;} .allListTable tr td {padding: 0 5px;border: 1px solid #000;}.tableBottom{font-size: 16px;display: flex;margin-top: 20px;}.tableBottomOne{margin-right: 40px;}}'
573 573
             printJS({
574 574
               printable: 'allList-print',
575 575
               type: 'html',
@@ -583,7 +583,7 @@
583 583
                 '@media print {.listTitle{font-size: 24px;text-align: center;font-weight: bold;margin-bottom: 10px;}.listInfo{display: flex;font-size: 16px;justify-content: space-between;margin: 10px 0;} .listTable{width: 100%;text-align: center;border-collapse: collapse;line-height: 20px;font-size: 14px;border-color: #000;text-align:left;}.listTable tr td {padding: 0 5px;}.tableBottom{font-size: 16px;display: flex;margin-top: 10px;}.tableBottomOne{margin-right: 40px;}}'
584 584
             printJS({
585 585
               printable: 'list-print',
586
-              type: 'html',
586
+              type: 'html', 
587 587
               style: style,
588 588
               scanStyles: false
589 589
             })

+ 135 - 49
src/xt_pages/outpatientCharges/listTemplate/listPrintTwo.vue Bestand weergeven

@@ -1,9 +1,106 @@
1 1
 <template>
2 2
   <div id="allList-print" class="allList-print">
3
-    <div class="allListTitle">
4
-      {{ $store.getters.xt_user.org.org_name }}费用清单
5
-    </div>
6
-    <div class="allListInfo">
3
+    <table
4
+      class="listTable"
5
+      border="0"
6
+      cellspacing="0"
7
+      style="font-size: 14px"
8
+      align="center"
9
+    >
10
+      <THEAD
11
+        style="
12
+          display: table-header-group;
13
+          font-weight: bold;
14
+        "
15
+      >
16
+        <TR>
17
+          <TD colspan="3" align="center" style="font-size: 20px">
18
+            {{ $store.getters.xt_user.org.org_name }}费用清单
19
+          </TD>
20
+        </TR>
21
+        <TR>
22
+          <TD colspan="1">患者姓名:{{ patient.name }}</TD>
23
+          <TD>性别:{{ patient.gender == 1 ? "男" : "女" }}</TD>
24
+          <TD
25
+            >结算类型:{{
26
+              order.is_medicine_insurance == 1 ? "医保" : "自费"
27
+            }}</TD
28
+          >
29
+        </TR>
30
+        <TR>
31
+          <TD> 住院/门诊号:{{ order.mdtrt_id }} </TD>
32
+          <TD>科室:血透 </TD>
33
+          <TD>就诊流水号:{{ order.mdtrt_id }}</TD>
34
+        </TR>
35
+        <TR>
36
+          <TD> 总费用:{{ order.medfee_sumamt }} </TD>
37
+          <TD>个人支付:{{ order.psn_part_amt }} </TD>
38
+          <TD>基金支付记账:{{ order.fund_pay_sumamt }}</TD>
39
+        </TR>
40
+        <TR>
41
+          <TD>补充医疗支付记账:0.00</TD>
42
+          <TD>救助支付金额:{{ order.maf_pay }}</TD>
43
+          <TD></TD>
44
+        </TR>
45
+      </THEAD>
46
+
47
+      <TBODY style="text-align: center">
48
+        <TR>
49
+          <TD colspan="3">
50
+            <Table class="allListTable" border="1">
51
+              <TR>
52
+                <TD style="width: 5%">序号</TD>
53
+                <TD style="width: 15%">处方日期</TD>
54
+                <TD style="width: 10%">费用编号</TD>
55
+                <TD style="width: 40%">费用名称</TD>
56
+                <TD style="width: 5%">单位</TD>
57
+                <TD style="width: 5%">数量</TD>
58
+                <TD style="width: 10%">单价</TD>
59
+                <TD style="width: 10%">金额</TD>
60
+              </TR>
61
+              <template v-for="(item, index) in list">
62
+                <tr v-if="item.is_total == 0">
63
+                  <td style="width: 5%">{{ index + 1 }}</td>
64
+                  <td style="width: 15%">{{ item.p_time }}</td>
65
+                  <td style="width: 10%">
66
+                    {{ item.feedetl_sn.split("-")[2] }}
67
+                  </td>
68
+                  <td style="width: 30%; white-space: nowrap; overflow: hidden">
69
+                    {{ item.name }}{{ item.spec }}
70
+                  </td>
71
+                  <td style="width: 5%">{{ item.unit }}</td>
72
+                  <td style="width: 5%; text-align: right">{{ item.count }}</td>
73
+                  <td style="width: 10%; text-align: right">
74
+                    {{ item.price }}
75
+                  </td>
76
+                  <td style="width: 10%; text-align: right">
77
+                    {{ (item.price * item.count).toFixed(2) }}
78
+                  </td>
79
+                </tr>
80
+                <tr v-if="item.is_total == 1">
81
+                  <td style="width: 5%"></td>
82
+                  <td style="width: 15%"></td>
83
+                  <td style="width: 10%"></td>
84
+                  <td style="width: 30%; white-space: nowrap; overflow: hidden">
85
+                    {{ item.name }}
86
+                  </td>
87
+                  <td style="width: 5%"></td>
88
+                  <td style="width: 5%"></td>
89
+                  <td style="width: 10%; text-align: right"></td>
90
+                  <td style="width: 10%; text-align: right">
91
+                    {{ item.price }}
92
+                  </td>
93
+                </tr>
94
+              </template>
95
+            </Table>
96
+          </TD>
97
+        </TR>
98
+      </TBODY>
99
+    </table>
100
+    <!-- <div class="allListTitle">
101
+      
102
+    </div> -->
103
+    <!-- <div class="allListInfo">
7 104
       <div style="text-align: left">患者姓名:{{ patient.name }}</div>
8 105
       <div style="text-align: left; padding-left: -20px">
9 106
         性别:{{ patient.gender == 1 ? "男" : "女" }}
@@ -11,10 +108,9 @@
11 108
       <div style="text-align: left">
12 109
         结算类型:{{ order.is_medicine_insurance == 1 ? "医保" : "自费" }}
13 110
       </div>
14
-      <!--        <div>发票号码:</div>-->
15
-    </div>
111
+    </div> 
16 112
 
17
-    <div class="allListInfo">
113
+     <div class="allListInfo">
18 114
       <div style="text-align: left">住院/门诊号:{{ order.mdtrt_id }}</div>
19 115
       <div style="text-align: left">科室:血透</div>
20 116
       <div style="text-align: left">就诊流水号:{{ order.mdtrt_id }}</div>
@@ -26,53 +122,13 @@
26 122
       <div style="text-align: left">
27 123
         基金支付记账:{{ order.fund_pay_sumamt }}
28 124
       </div>
29
-    </div>
125
+    </div> 
30 126
 
31 127
     <div class="allListInfo">
32 128
       <div style="text-align: left">补充医疗支付记账:0.00</div>
33 129
       <div style="text-align: left">救助支付金额:{{ order.maf_pay }}</div>
34 130
       <div></div>
35
-    </div>
36
-    <table class="allListTable" border="1">
37
-      <tr>
38
-        <td style="width: 5%">序号</td>
39
-        <td style="width: 15%">处方日期</td>
40
-        <td style="width: 10%">费用编号</td>
41
-        <td style="width: 40%">费用名称</td>
42
-        <td style="width: 5%">单位</td>
43
-        <td style="width: 5%">数量</td>
44
-        <td style="width: 10%">单价</td>
45
-        <td style="width: 10%">金额</td>
46
-      </tr>
47
-      <template v-for="(item, index) in list">
48
-        <tr v-if="item.is_total == 0">
49
-          <td style="width: 5%">{{ index + 1 }}</td>
50
-          <td style="width: 15%">{{ item.p_time }}</td>
51
-          <td style="width: 10%">{{ item.feedetl_sn.split("-")[2] }}</td>
52
-          <td style="width: 30%; white-space: nowrap; overflow: hidden">
53
-            {{ item.name }}{{ item.spec }}
54
-          </td>
55
-          <td style="width: 5%">{{ item.unit }}</td>
56
-          <td style="width: 5%; text-align: right">{{ item.count }}</td>
57
-          <td style="width: 10%; text-align: right">{{ item.price }}</td>
58
-          <td style="width: 10%; text-align: right">
59
-            {{ (item.price * item.count).toFixed(2) }}
60
-          </td>
61
-        </tr>
62
-        <tr v-if="item.is_total == 1">
63
-          <td style="width: 5%"></td>
64
-          <td style="width: 15%"></td>
65
-          <td style="width: 10%"></td>
66
-          <td style="width: 30%; white-space: nowrap; overflow: hidden">
67
-            {{ item.name }}
68
-          </td>
69
-          <td style="width: 5%"></td>
70
-          <td style="width: 5%"></td>
71
-          <td style="width: 10%; text-align: right"></td>
72
-          <td style="width: 10%; text-align: right">{{ item.price }}</td>
73
-        </tr>
74
-      </template>
75
-    </table>
131
+    </div>-->
76 132
   </div>
77 133
 </template>
78 134
 
@@ -207,6 +263,36 @@ export default {
207 263
   margin-top: 20px;
208 264
 }
209 265
 
266
+.tableBottomOne {
267
+  margin-right: 40px;
268
+}
269
+
270
+.listTable {
271
+  width: 100%;
272
+  text-align: center;
273
+  border-collapse: collapse;
274
+  line-height: 40px;
275
+  font-size: 14px;
276
+  border-color: #000;
277
+  text-align: left;
278
+}
279
+.listTable thead {
280
+  width: 100%;
281
+  text-align: center;
282
+  border-collapse: collapse;
283
+  line-height: 40px;
284
+  font-size: 14px;
285
+  border-color: #000;
286
+  text-align: left;
287
+}
288
+.listTable thead tr td {
289
+  padding: 0 5px;
290
+}
291
+.tableBottom {
292
+  font-size: 16px;
293
+  display: flex;
294
+  margin-top: 20px;
295
+}
210 296
 .tableBottomOne {
211 297
   margin-right: 40px;
212 298
 }

+ 3 - 4
src/xt_pages/outpatientCharges/listTemplate/printTwo10265.vue Bestand weergeven

@@ -12,8 +12,8 @@
12 12
           <TR
13 13
             ><TD colspan="4" align="center" style="font-size: 20px"
14 14
               >{{ $store.getters.xt_user.org.org_name }}费用清单</TD
15
-            ></TR
16
-          >
15
+            ></TR>
16
+          
17 17
           <TR>
18 18
             <TD colspan="1">个人编码:{{ order.psn_no }}</TD>
19 19
             <TD>住院号:{{ order.mdtrt_id }}</TD>
@@ -119,9 +119,8 @@
119 119
                 <TR>
120 120
                   <TD>报销类别费用合计</TD>
121 121
                   <TD>甲类:{{ getJaiTotal() ? getJaiTotal() : "0.00" }}</TD>
122
-                  <TD>乙类药品:{{ getYiTotal() ? getYiTotal() : "0.00" }}</TD>
122
+                  <TD>乙类:{{ getYiTotal() ? getYiTotal() : "0.00" }}</TD>
123 123
                   <TD>丙类:{{ getBingTotal() ? getBingTotal() : "0.00" }}</TD>
124
-                  <TD>非药品:0.00</TD>
125 124
                   <TD></TD>
126 125
                   <TD>其他:0.00</TD>
127 126
                 </TR>

+ 38 - 10
src/xt_pages/outpatientCharges/outpatientChargesManagement.vue Bestand weergeven

@@ -118,6 +118,11 @@
118 118
 <!--                       type="primary">撤销记账-->
119 119
 <!--            </el-button>-->
120 120
 
121
+            <el-button v-loading="loadingone" size="small"
122
+                       @click="open(40)"
123
+                       v-if="org_id == 10191"
124
+                       type="primary">登陆
125
+            </el-button>
121 126
 
122 127
             <el-button v-loading="loadingone" size="small"
123 128
                        @click="open(6)"
@@ -2853,6 +2858,10 @@ export default {
2853 2858
       }
2854 2859
     },
2855 2860
     open(index, med_type, order, prescriptions) {
2861
+
2862
+
2863
+
2864
+
2856 2865
       this.other_prescriptions = prescriptions
2857 2866
 
2858 2867
       if (index == 1) {
@@ -2869,8 +2878,7 @@ export default {
2869 2878
         this.paramsObj = obj
2870 2879
         this.treatVisible = true
2871 2880
         // this.$router.push('/outpatientCharges/treatPrint?record_date=' + this.record_date + '&patient_id=' + this.patient_id + '&prescription_id=' + this.prescription_id)
2872
-      }
2873
-      else if (index == 4) {//收费
2881
+      } else if (index == 4) {//收费
2874 2882
         var ids = []
2875 2883
         for (let i = 0; i < prescriptions.length; i++) {
2876 2884
           ids.push(prescriptions[i].id)
@@ -2890,7 +2898,7 @@ export default {
2890 2898
         }
2891 2899
 
2892 2900
         if (this.hisPatientInfo.id_card_type == 1) {
2893
-          if (this.hisPatientInfo.balance_accounts_type != 2 && this.$store.getters.xt_user.org_id != 10088 && this.$store.getters.xt_user.org_id != 10106 && this.$store.getters.xt_user.org_id != 10188 && this.$store.getters.xt_user.org_id != 10217) {
2901
+          if (this.hisPatientInfo.balance_accounts_type != 2 && this.$store.getters.xt_user.org_id != 10088 && this.$store.getters.xt_user.org_id != 10106 && this.$store.getters.xt_user.org_id != 10188 && this.$store.getters.xt_user.org_id != 10217 && this.$store.getters.xt_user.org_id != 10191) {
2894 2902
             this.pwdFormVisible = true
2895 2903
             this.pwd = ''
2896 2904
           } else {
@@ -3190,7 +3198,8 @@ export default {
3190 3198
           'patient_id': this.patientInfo.id,
3191 3199
           'record_time': this.record_date,
3192 3200
           'org_id': this.$store.getters.xt_user.org_id,
3193
-          'his_patient_id': this.hisPatientInfo.id
3201
+          'his_patient_id': this.hisPatientInfo.id,
3202
+          'admin_user_id':this.$store.getters.xt_user.user.id,
3194 3203
         }
3195 3204
         axios.get('http://127.0.0.1:9532/api/refunddetail/post', {
3196 3205
           params: params
@@ -3225,7 +3234,6 @@ export default {
3225 3234
                   confirmButtonText: '确 定',
3226 3235
                   type: 'warning'
3227 3236
                 }).then(() => {
3228
-
3229 3237
                 }).catch(() => {
3230 3238
                 })
3231 3239
               }
@@ -3248,6 +3256,25 @@ export default {
3248 3256
         this.invoiceParams = paramsObj
3249 3257
         this.invoiceVisible = true
3250 3258
 
3259
+      } else if(index == 40){
3260
+        var that = this
3261
+        let params = {
3262
+        }
3263
+        axios.get('http://127.0.0.1:9532/9001', {
3264
+          params: params
3265
+        })
3266
+            .then(function(response) {
3267
+              if (response.data.state == 0) {
3268
+                that.$message.error(response.data.msg)
3269
+                return false
3270
+              } else {
3271
+                that.$message({ message: '登陆成功', type: 'success', duration: 5000 })
3272
+              }
3273
+            })
3274
+            .catch(function(error) {
3275
+            })
3276
+
3277
+
3251 3278
       }
3252 3279
     }, getName(admin_user_id) {
3253 3280
       for (let i = 0; i < this.adminUserOptions.length; i++) {
@@ -4359,13 +4386,14 @@ export default {
4359 4386
                 this.form.diagnosis = []
4360 4387
               } else {
4361 4388
                 for (let i = 0; i < response.data.data.info.diagnosis.split(',').length; i++) {
4362
-                  this.form.diagnosis.push(parseInt(response.data.data.info.diagnosis.split(',')[i]))
4389
+                  if(parseInt(response.data.data.info.diagnosis.split(',')[i]) !== NaN){
4390
+                    this.form.diagnosis.push(parseInt(response.data.data.info.diagnosis.split(',')[i]))
4391
+                  }
4363 4392
                 }
4364 4393
               }
4365
-              console.log("~~~~~~")
4366
-              console.log(this.form.diagnosis)
4367
-              console.log(this.diagnoses)
4368
-              console.log("~~~~~~")
4394
+
4395
+
4396
+
4369 4397
 
4370 4398
 
4371 4399
 

+ 53 - 40
src/xt_pages/outpatientCharges/statementPrint.vue Bestand weergeven

@@ -28,21 +28,24 @@
28 28
           :info="info"
29 29
           :paramsObj="paramsObj"
30 30
           :balanceAccounts="balanceAccounts"
31
-          v-if="
32
-            org_id == 10138 || org_id == 4 || org_id == 10278
33
-          "
31
+          v-if="org_id == 10138 || org_id == 4 || org_id == 10278"
34 32
         ></printThree>
35 33
         <printFour
36
-          v-if="org_id == 9504 || org_id == 10028  || org_id == 10088"
34
+          v-if="org_id == 9504 || org_id == 10028 || org_id == 10088"
37 35
           :info="info"
38 36
           :paramsObj="paramsObj"
39 37
           :balanceAccounts="balanceAccounts"
40 38
         ></printFour>
41
-<!--        <privateChargePrint  :info="info" v-if="org_id == 10215 && this.paramsObj.balance_accounts_type == 2"></privateChargePrint>-->
42
-
39
+        <!--        <privateChargePrint  :info="info" v-if="org_id == 10215 && this.paramsObj.balance_accounts_type == 2"></privateChargePrint>-->
43 40
       </div>
44
-<!--      <print-other :info="info" v-if="org_id == 9919"></print-other>-->
45
-<!--      <printOne :info=" info" v-if="org_id == 10215 && this.paramsObj.balance_accounts_type == 2"></printOne>-->
41
+      <!--      <print-other :info="info" v-if="org_id == 9919"></print-other>-->
42
+      <!--      <printOne :info=" info" v-if="org_id == 10215 && this.paramsObj.balance_accounts_type == 2"></printOne>-->
43
+      <printFive
44
+        v-if="org_id == 0"
45
+        :info="info"
46
+        :paramsObj="paramsObj"
47
+        :balanceAccounts="balanceAccounts"
48
+      ></printFive>
46 49
       <printOne :info="info" v-else></printOne>
47 50
       <!-- 测试医保环境下表格样式放开以下这条 -->
48 51
       <!-- <testVue :info="info" v-else></testVue> -->
@@ -65,13 +68,14 @@ import privateChargePrint from "./statementTemplate/privateChargePrint";
65 68
 import printTwo from "./statementTemplate/printTwo";
66 69
 import printThree from "./statementTemplate/printThree";
67 70
 import printFour from "./statementTemplate/printFour";
71
+import printFive from "./statementTemplate/printFive";
68 72
 import testVue from "./statementTemplate/test";
69 73
 import {
70 74
   getAllDoctorList,
71 75
   getAllHisPatientList,
72 76
   getPrescriptionPrint,
73 77
 } from "@/api/project/project";
74
-import { getPrivateExpenses,getPrivateExpensesOrder } from "@/api/his/his";
78
+import { getPrivateExpenses, getPrivateExpensesOrder } from "@/api/his/his";
75 79
 // import PrintOther from '../hospitalStation/statementTemplate/printOther'
76 80
 export default {
77 81
   name: "dialysisPrintOrder",
@@ -83,6 +87,7 @@ export default {
83 87
     printThree,
84 88
     printFour,
85 89
     testVue,
90
+    printFive,
86 91
   },
87 92
   props: {
88 93
     paramsObj: Object,
@@ -115,7 +120,6 @@ export default {
115 120
 
116 121
       if (
117 122
         this.$store.getters.xt_user.org_id == 10138 ||
118
-        // this.$store.getters.xt_user.org_id == 0 ||
119 123
         this.$store.getters.xt_user.org_id == 4 ||
120 124
         this.$store.getters.xt_user.org_id == 10278
121 125
       ) {
@@ -256,6 +260,18 @@ export default {
256 260
             style: style,
257 261
             scanStyles: false,
258 262
           });
263
+        } else if (
264
+          this.$store.getters.xt_user.org_id == 0 ||
265
+          this.$store.getters.xt_user.org_id == 10191
266
+        ) {
267
+          const style =
268
+            "@media print {.statementTable{width: 100%;text-align: center;border-collapse: collapse;line-height: 40px;font-size: 14px;border-color: #000;} .statementTable thead{font-size: 28px;text-align: center;font-weight: bold;margin-bottom: 10px;} .statementTable tbody{text-align:left;} .statementTable tbody .view_tr{text-align:center;border: 1px solid;} tbody .dashed_tr{border: 1px dashed;text-align:center} .list_table{width: 100%;margin-bottom: 100px;} tbody tr td div{height:25px;}}";
269
+          printJS({
270
+            printable: "statement-print",
271
+            type: "html",
272
+            style: style,
273
+            scanStyles: false,
274
+          });
259 275
         } else {
260 276
           const style =
261 277
             "@media print {#statement-print{font-size:14px;border:1px solid white}.statementTitle{font-size: 22px;text-align: center;font-weight: bold;}table{border-collapse: collapse;text-align: center;}table td {padding: 10px 5px;font-size:16px;}@media print {html {zoom: 57%;}}}";
@@ -363,8 +379,8 @@ export default {
363 379
         let params = {
364 380
           his_patient_id: obj.his_patient_id,
365 381
           id: obj.order_id,
366
-          order_id:obj.order_id,
367
-          admin_user_id:this.$store.getters.xt_user.user.id,
382
+          order_id: obj.order_id,
383
+          admin_user_id: this.$store.getters.xt_user.user.id,
368 384
         };
369 385
         if (
370 386
           this.org_id == 10138 ||
@@ -491,16 +507,14 @@ export default {
491 507
               console.log(111, this.balanceAccounts);
492 508
             }
493 509
           });
494
-        }else
495
-          if (this.org_id == 10215 || this.org_id == 0) {
496
-
510
+        } else if (this.org_id == 10215 || this.org_id == 0) {
497 511
           getPrivateExpensesOrder(params).then((response) => {
498 512
             if (response.data.state == 0) {
499 513
               // this.$message.error(response.data.msg)
500 514
 
501 515
               return false;
502 516
             } else {
503
-              var that = this
517
+              var that = this;
504 518
               that.info = response.data.data.info;
505 519
               that.p_admin = response.data.data.printor_admin;
506 520
               that.charge_admin = response.data.data.charge_admin;
@@ -521,62 +535,62 @@ export default {
521 535
 
522 536
               that.info["bed_cost_total"] = response.data.data.bedCostTotal;
523 537
               that.info["bed_cost_self_total"] =
524
-                  response.data.data.bedCostSelfTotal;
538
+                response.data.data.bedCostSelfTotal;
525 539
               that.info["bed_cost_part_self_total"] =
526
-                  response.data.data.bedCostPartSelfTotal;
540
+                response.data.data.bedCostPartSelfTotal;
527 541
 
528 542
               that.info["operation_cost_total"] =
529
-                  response.data.data.operationCostTotal;
543
+                response.data.data.operationCostTotal;
530 544
               that.info["operation_cost_self_total"] =
531
-                  response.data.data.operationCostSelfTotal;
545
+                response.data.data.operationCostSelfTotal;
532 546
               that.info["operation_cost_part_self_total"] =
533
-                  response.data.data.operationCostPartSelfTotal;
547
+                response.data.data.operationCostPartSelfTotal;
534 548
 
535 549
               that.info["other_cost_total"] = response.data.data.otherCostTotal;
536 550
               that.info["other_cost_self_total"] =
537
-                  response.data.data.otherCostSelfTotal;
551
+                response.data.data.otherCostSelfTotal;
538 552
               that.info["other_cost_part_self_total"] =
539
-                  response.data.data.otherCostPartSelfTotal;
553
+                response.data.data.otherCostPartSelfTotal;
540 554
 
541 555
               that.info["material_cost_total"] =
542
-                  response.data.data.materialCostTotal;
556
+                response.data.data.materialCostTotal;
543 557
               that.info["material_cost_self_total"] =
544
-                  response.data.data.materialCostSelfTotal;
558
+                response.data.data.materialCostSelfTotal;
545 559
               that.info["material_cost_part_self_total"] =
546
-                  response.data.data.materialCostPartSelfTotal;
560
+                response.data.data.materialCostPartSelfTotal;
547 561
 
548 562
               that.info["western_medicine_cost_total"] =
549
-                  response.data.data.westernMedicineCostTotal;
563
+                response.data.data.westernMedicineCostTotal;
550 564
               that.info["western_medicine_cost_self_total"] =
551
-                  response.data.data.westernMedicineCostSelfTotal;
565
+                response.data.data.westernMedicineCostSelfTotal;
552 566
               that.info["western_medicine_cost_part_self_total"] =
553
-                  response.data.data.westernMedicineCostPartSelfTotal;
567
+                response.data.data.westernMedicineCostPartSelfTotal;
554 568
 
555 569
               that.info["chinese_traditional_medicine_cost_total"] =
556
-                  response.data.data.chineseTraditionalMedicineCostTotal;
570
+                response.data.data.chineseTraditionalMedicineCostTotal;
557 571
               that.info["chinese_traditional_medicine_cost_self_total"] =
558
-                  response.data.data.chineseTraditionalMedicineCostSelfTotal;
572
+                response.data.data.chineseTraditionalMedicineCostSelfTotal;
559 573
               that.info["chinese_traditional_medicine_cost_part_self_total"] =
560
-                  response.data.data.chineseTraditionalMedicineCostPartSelfTotal;
574
+                response.data.data.chineseTraditionalMedicineCostPartSelfTotal;
561 575
 
562 576
               that.info["check_cost_total"] = response.data.data.checkCostTotal;
563 577
               that.info["check_cost_self_total"] =
564
-                  response.data.data.checkCostSelfTotal;
578
+                response.data.data.checkCostSelfTotal;
565 579
               that.info["check_cost_part_self_total"] =
566
-                  response.data.data.checkCostPartSelfTotal;
580
+                response.data.data.checkCostPartSelfTotal;
567 581
 
568 582
               that.info["laboratory_cost_total"] =
569
-                  response.data.data.laboratoryCostTotal;
583
+                response.data.data.laboratoryCostTotal;
570 584
               that.info["laboratory_cost_self_total"] =
571
-                  response.data.data.laboratoryCostSelfTotal;
585
+                response.data.data.laboratoryCostSelfTotal;
572 586
               that.info["laboratory_cost_part_self_total"] =
573
-                  response.data.data.laboratoryCostPartSelfTotal;
587
+                response.data.data.laboratoryCostPartSelfTotal;
574 588
 
575 589
               that.info["treat_cost_total"] = response.data.data.treatCostTotal;
576 590
               that.info["treat_cost_self_total"] =
577
-                  response.data.data.treatCostSelfTotal;
591
+                response.data.data.treatCostSelfTotal;
578 592
               that.info["treat_cost_part_self_total"] =
579
-                  response.data.data.treatCostPartSelfTotal;
593
+                response.data.data.treatCostPartSelfTotal;
580 594
               that.info["date"] = response.data.data.date;
581 595
               // that.info["number"] = response.data.data.number;
582 596
               that.info["order_infos"] = response.data.data.order_infos;
@@ -643,7 +657,6 @@ export default {
643 657
               }
644 658
             }
645 659
           });
646
-
647 660
         }
648 661
       } else {
649 662
         var that = this;

+ 182 - 0
src/xt_pages/outpatientCharges/statementTemplate/printFive.vue Bestand weergeven

@@ -0,0 +1,182 @@
1
+<template>
2
+  <div id="statement-print" class="statement-print">
3
+    <table class="statementTable" border="0">
4
+      <thead>
5
+        <tr>
6
+          <td colspan="10">石狮圣誉血液透析中心结算单</td>
7
+        </tr>
8
+      </thead>
9
+
10
+      <tbody>
11
+        <tr>
12
+          <td colspan="10">日期区间:</td>
13
+        </tr>
14
+        <tr class="view_tr">
15
+          <td colspan="2">姓名:</td>
16
+          <td colspan="2">性别:</td>
17
+          <td colspan="2">医保类型:</td>
18
+          <td colspan="2">社会保障号码:</td>
19
+          <td colspan="2">账号余额:</td>
20
+        </tr>
21
+        <tr class="view_tr">
22
+          <td colspan="10">明细信息</td>
23
+        </tr>
24
+
25
+        <!-- 帐单列表分为左右两列,需要对数据进行x/2分别放进list_L,list_R两个数组进行循环 -->
26
+        <tr>
27
+          <td colspan="6">
28
+            <table class="list_table">
29
+              <tr colspan="6" v-for="(item, index) in list_L" :key="index">
30
+                <td colspan="2">药名</td>
31
+                <td>规格</td>
32
+                <td>数量</td>
33
+                <td>价格</td>
34
+              </tr>
35
+            </table>
36
+          </td>
37
+
38
+          <td colspan="4">
39
+            <table class="list_table">
40
+              <tr colspan="4" v-for="(item, index) in list_R" :key="index">
41
+                <td colspan="2">药名</td>
42
+                <td>规格</td>
43
+                <td>数量</td>
44
+                <td>价格</td>
45
+              </tr>
46
+            </table>
47
+          </td>
48
+        </tr>
49
+        <tr>
50
+          <td colspan="10">共一页,第一页419.32</td>
51
+        </tr>
52
+        <tr class="dashed_tr">
53
+          <td colspan="10">结付分类</td>
54
+        </tr>
55
+        <tr>
56
+          <td colspan="10">
57
+            <div>费用总计:</div>
58
+            <div>统筹支付:</div>
59
+            <div>账户支付:</div>
60
+            <div>个人现金支付:</div>
61
+            <div>其他支付:</div>
62
+            <div>减免金额:</div>
63
+          </td>
64
+        </tr>
65
+      </tbody>
66
+    </table>
67
+  </div>
68
+</template>
69
+<script>
70
+export default {
71
+  props: {
72
+    info: {
73
+      type: Object,
74
+      default: function () {
75
+        return {};
76
+      },
77
+    },
78
+    p_admin: {
79
+      type: Object,
80
+      default: function () {
81
+        return {};
82
+      },
83
+    },
84
+    charge_admin: {
85
+      type: Object,
86
+      default: function () {
87
+        return {};
88
+      },
89
+    },
90
+  },
91
+  data() {
92
+    return {
93
+      list_L: [1,2],
94
+      list_R: [1,2],
95
+    };
96
+  },
97
+  methods: {
98
+    getDay(dateString1, dateString2) {
99
+      var startDate = Date.parse(dateString1);
100
+      var endDate = Date.parse(dateString2);
101
+      if (startDate > endDate) {
102
+        return 0;
103
+      }
104
+      if (startDate == endDate) {
105
+        return 1;
106
+      }
107
+      var days = (endDate - startDate) / (1 * 24 * 60 * 60 * 1000);
108
+      return days;
109
+    },
110
+    getNowTime: function () {
111
+      let dateTime;
112
+      let yy = new Date().getFullYear();
113
+      let mm = new Date().getMonth() + 1;
114
+      let dd = new Date().getDate();
115
+      let hh = new Date().getHours();
116
+      let mf =
117
+        new Date().getMinutes() < 10
118
+          ? "0" + new Date().getMinutes()
119
+          : new Date().getMinutes();
120
+      let ss =
121
+        new Date().getSeconds() < 10
122
+          ? "0" + new Date().getSeconds()
123
+          : new Date().getSeconds();
124
+      dateTime = yy + "-" + mm + "-" + dd + " " + hh + ":" + mf + ":" + ss;
125
+      return dateTime;
126
+    },
127
+  },
128
+};
129
+</script>
130
+
131
+
132
+<style lang="scss" scoped>
133
+.statement-print {
134
+  -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27),
135
+    0 0 60px rgba(0, 0, 0, 0.06) inset;
136
+  -moz-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27),
137
+    0 0 40px rgba(0, 0, 0, 0.06) inset;
138
+  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 40px rgba(0, 0, 0, 0.06) inset;
139
+  margin-bottom: 20px;
140
+  padding: 20px 10px;
141
+}
142
+
143
+.statementTitle {
144
+  font-size: 28px;
145
+  text-align: center;
146
+  font-weight: bold;
147
+  margin-bottom: 10px;
148
+}
149
+
150
+.statementTable {
151
+  width: 100%;
152
+  text-align: center;
153
+  border-collapse: collapse;
154
+  line-height: 40px;
155
+  font-size: 14px;
156
+}
157
+.statementTable thead{
158
+  font-size: 28px;
159
+  text-align: center;
160
+  font-weight: bold;
161
+  margin-bottom: 10px;
162
+}
163
+
164
+.statementTable tbody{
165
+    text-align: left;
166
+}
167
+tbody .view_tr{
168
+    border: 1px solid;
169
+    text-align: center;
170
+}
171
+.list_table{
172
+    width: 100%;
173
+    margin-bottom: 100px;
174
+}
175
+tbody .dashed_tr{
176
+    border: 1px dashed;
177
+    text-align: center;
178
+}
179
+tbody tr td div{
180
+    height: 25px;
181
+}
182
+</style>

+ 423 - 257
src/xt_pages/outpatientCharges/summary.vue Bestand weergeven

@@ -5,7 +5,7 @@
5 5
     </div>
6 6
     <div class="app-container">
7 7
       <div
8
-        style="
8
+          style="
9 9
           display: flex;
10 10
           justify-content: space-between;
11 11
           margin-bottom: 10px;
@@ -17,19 +17,19 @@
17 17
           <!--导出-->
18 18
           <!--</el-button>-->
19 19
           <el-input
20
-            size="small"
21
-            style="width: 150px"
22
-            v-model="keywords"
23
-            @input="searchAction"
24
-            @keyup.enter.native="searchAction"
25
-            class="filter-item"
20
+              size="small"
21
+              style="width: 150px"
22
+              v-model="keywords"
23
+              @input="searchAction"
24
+              @keyup.enter.native="searchAction"
25
+              class="filter-item"
26 26
           />
27 27
           <el-button
28
-            size="small"
29
-            style="margin-left: 10px"
30
-            class="filter-item"
31
-            type="primary"
32
-            @click="searchAction"
28
+              size="small"
29
+              style="margin-left: 10px"
30
+              class="filter-item"
31
+              type="primary"
32
+              @click="searchAction"
33 33
           >
34 34
             搜索
35 35
           </el-button>
@@ -48,48 +48,48 @@
48 48
           <!--                    </el-select>-->
49 49
 
50 50
           <el-select
51
-            size="small"
52
-            v-model="sort_type"
53
-            placeholder="请选择"
54
-            style="width: 150px; margin-left: 10px"
55
-            @change="changeSortType"
51
+              size="small"
52
+              v-model="sort_type"
53
+              placeholder="请选择"
54
+              style="width: 150px; margin-left: 10px"
55
+              @change="changeSortType"
56 56
           >
57 57
             <el-option
58
-              v-for="(item, index) in sort_types"
59
-              :key="index"
60
-              :label="item.label"
61
-              :value="item.value"
58
+                v-for="(item, index) in sort_types"
59
+                :key="index"
60
+                :label="item.label"
61
+                :value="item.value"
62 62
             >
63 63
             </el-option>
64 64
           </el-select>
65 65
           <el-date-picker
66
-            size="small"
67
-            v-model="start_time"
68
-            prefix-icon="el-icon-date"
69
-            @change="handleStartTimeChange"
70
-            :editable="false"
71
-            :clearable="false"
72
-            style="width: 196px; margin-right: 10px"
73
-            type="date"
74
-            placeholder="选择开始日期"
75
-            format="yyyy-MM-dd"
76
-            value-format="yyyy-MM-dd"
77
-            align="right"
66
+              size="small"
67
+              v-model="start_time"
68
+              prefix-icon="el-icon-date"
69
+              @change="handleStartTimeChange"
70
+              :editable="false"
71
+              :clearable="false"
72
+              style="width: 196px; margin-right: 10px"
73
+              type="date"
74
+              placeholder="选择开始日期"
75
+              format="yyyy-MM-dd"
76
+              value-format="yyyy-MM-dd"
77
+              align="right"
78 78
           ></el-date-picker>
79 79
 
80 80
           <el-date-picker
81
-            size="small"
82
-            v-model="end_time"
83
-            prefix-icon="el-icon-date"
84
-            @change="handleEndTimeChange"
85
-            :editable="false"
86
-            :clearable="false"
87
-            style="width: 196px; margin-right: 10px"
88
-            type="date"
89
-            placeholder="选择结束日期"
90
-            format="yyyy-MM-dd"
91
-            value-format="yyyy-MM-dd"
92
-            align="right"
81
+              size="small"
82
+              v-model="end_time"
83
+              prefix-icon="el-icon-date"
84
+              @change="handleEndTimeChange"
85
+              :editable="false"
86
+              :clearable="false"
87
+              style="width: 196px; margin-right: 10px"
88
+              type="date"
89
+              placeholder="选择结束日期"
90
+              format="yyyy-MM-dd"
91
+              value-format="yyyy-MM-dd"
92
+              align="right"
93 93
           ></el-date-picker>
94 94
           <!--<el-radio v-model="radio" label="1">明细</el-radio>-->
95 95
           <!--<el-radio v-model="radio" label="2">汇总</el-radio>-->
@@ -105,27 +105,32 @@
105 105
 
106 106
                     </el-popover> -->
107 107
           <el-button size="small" type="primary" @click="export_detail"
108
-            >报表下载</el-button
108
+          >报表下载
109
+          </el-button
109 110
           >
111
+<!--          <el-button size="small" type="primary" @click="export_detail_two"-->
112
+<!--          >报表下载2-->
113
+<!--          </el-button-->
114
+<!--          >-->
110 115
         </div>
111 116
       </div>
112 117
       <el-table
113
-        :data="tableData"
114
-        border
115
-        style="width: 100%"
116
-        :row-style="{ color: '#303133' }"
117
-        :header-cell-style="{
118
+          :data="tableData"
119
+          border
120
+          style="width: 100%"
121
+          :row-style="{ color: '#303133' }"
122
+          :header-cell-style="{
118 123
           backgroundColor: 'rgb(245, 247, 250)',
119 124
           color: '#606266',
120 125
         }"
121
-        highlight-current-row
126
+          highlight-current-row
122 127
       >
123 128
         <el-table-column
124
-          prop="date"
125
-          label="序号"
126
-          width="60"
127
-          align="center"
128
-          type="index"
129
+            prop="date"
130
+            label="序号"
131
+            width="60"
132
+            align="center"
133
+            type="index"
129 134
         >
130 135
         </el-table-column>
131 136
         <el-table-column align="center" width="100" prop="name" label="就诊号">
@@ -140,18 +145,21 @@
140 145
 
141 146
         <el-table-column align="center" width="90" prop="name" label="应收金额">
142 147
           <template slot-scope="scope">{{
143
-            scope.row.medfee_sumamt.toFixed(2)
144
-          }}</template>
148
+              scope.row.medfee_sumamt.toFixed(2)
149
+            }}
150
+          </template>
145 151
         </el-table-column>
146 152
         <el-table-column align="center" width="90" prop="name" label="实收金额">
147 153
           <template slot-scope="scope">{{
148
-            scope.row.reality_price.toFixed(2)
149
-          }}</template>
154
+              scope.row.reality_price.toFixed(2)
155
+            }}
156
+          </template>
150 157
         </el-table-column>
151 158
         <el-table-column align="center" width="90" prop="name" label="科室">
152 159
           <template slot-scope="scope">{{
153
-            scope.row.department_name
154
-          }}</template>
160
+              scope.row.department_name
161
+            }}
162
+          </template>
155 163
         </el-table-column>
156 164
         <el-table-column align="center" width="90" prop="name" label="医疗类型">
157 165
           <template slot-scope="scope">
@@ -171,23 +179,24 @@
171 179
         </el-table-column>
172 180
 
173 181
         <el-table-column
174
-          align="center"
175
-          width="100"
176
-          prop="name"
177
-          label="收费日期"
182
+            align="center"
183
+            width="100"
184
+            prop="name"
185
+            label="收费日期"
178 186
         >
179 187
           <template slot-scope="scope">
180 188
             {{
181 189
               scope.row.setl_time
182
-                ? scope.row.setl_time
183
-                : getTimes(scope.row.settle_accounts_date)
190
+                  ? scope.row.setl_time
191
+                  : getTimes(scope.row.settle_accounts_date)
184 192
             }}
185 193
           </template>
186 194
         </el-table-column>
187 195
         <el-table-column align="center" width="90" prop="name" label="收费员">
188 196
           <template slot-scope="scope">{{
189
-            getName(scope.row.creator)
190
-          }}</template>
197
+              getName(scope.row.creator)
198
+            }}
199
+          </template>
191 200
         </el-table-column>
192 201
         <el-table-column align="center" width="80" prop="name" label="状态">
193 202
           <template slot-scope="scope">
@@ -199,88 +208,90 @@
199 208
         <el-table-column align="center" prop="name" label="操作">
200 209
           <template slot-scope="scope">
201 210
             <el-button size="mini" type="primary" @click="toDetail(scope.row)"
202
-              >详情</el-button
211
+            >详情
212
+            </el-button
203 213
             >
204 214
             <el-button size="mini" type="primary" @click="toPrint(scope.row)">
205 215
               结算单
206 216
             </el-button>
207 217
             <el-button
208
-              size="mini"
209
-              type="primary"
210
-              @click="uploadInfo(scope.row)"
211
-              v-if="scope.row.order_status == 2 && scope.row.result.id == 0"
218
+                size="mini"
219
+                type="primary"
220
+                @click="uploadInfo(scope.row)"
221
+                v-if="scope.row.order_status == 2 && scope.row.result.id == 0"
212 222
             >
213 223
               上传结算清单
214 224
             </el-button>
215 225
             <el-button
216
-              size="mini"
217
-              type="primary"
218
-              @click="cancelUpload(scope.row)"
219
-              v-if="scope.row.order_status == 2 && scope.row.result.id > 0"
226
+                size="mini"
227
+                type="primary"
228
+                @click="cancelUpload(scope.row)"
229
+                v-if="scope.row.order_status == 2 && scope.row.result.id > 0"
220 230
             >
221 231
               撤销结算清单
222 232
             </el-button>
223 233
             <el-button
224
-              size="mini"
225
-              type="primary"
226
-              v-if="
234
+                size="mini"
235
+                type="primary"
236
+                v-if="
227 237
                 scope.row.order_status == 2 &&
228 238
                 $store.getters.xt_user.org_id == 10106
229 239
               "
230
-              @click="settlementPrint(scope.row)"
231
-              >结算单
240
+                @click="settlementPrint(scope.row)"
241
+            >结算单
232 242
             </el-button>
233 243
             <el-button size="mini" type="primary" @click="toRefund(scope.row)">
234 244
               退费
235 245
             </el-button>
236 246
             <el-button
237
-              size="mini"
238
-              type="primary"
239
-              @click="invoicePrint(scope.row)"
240
-              >打印发票</el-button
247
+                size="mini"
248
+                type="primary"
249
+                @click="invoicePrint(scope.row)"
250
+            >打印发票
251
+            </el-button
241 252
             >
242 253
           </template>
243 254
         </el-table-column>
244 255
       </el-table>
245 256
       <el-pagination
246
-        @size-change="handleSizeChange"
247
-        @current-change="handleCurrentChange"
248
-        :page-sizes="[10, 50, 100]"
249
-        :page-size="10"
250
-        :current-page.sync="page"
251
-        background
252
-        style="margin-top: 20px; float: right"
253
-        layout="total, sizes, prev, pager, next, jumper"
254
-        :total="total"
257
+          @size-change="handleSizeChange"
258
+          @current-change="handleCurrentChange"
259
+          :page-sizes="[10, 50, 100]"
260
+          :page-size="10"
261
+          :current-page.sync="page"
262
+          background
263
+          style="margin-top: 20px; float: right"
264
+          layout="total, sizes, prev, pager, next, jumper"
265
+          :total="total"
255 266
       >
256 267
       </el-pagination>
257 268
     </div>
258 269
 
259 270
     <el-dialog
260
-      class="centerDialog"
261
-      width="1200px"
262
-      title="打印"
263
-      :visible.sync="statementVisible"
271
+        class="centerDialog"
272
+        width="1200px"
273
+        title="打印"
274
+        :visible.sync="statementVisible"
264 275
     >
265 276
       <!--<statementPrint ref="print" :paramsObj='orderObj'></statementPrint>-->
266 277
       <new-statement-print
267
-        ref="print"
268
-        :paramsObj="orderObj"
278
+          ref="print"
279
+          :paramsObj="orderObj"
269 280
       ></new-statement-print>
270 281
     </el-dialog>
271 282
     <el-dialog
272
-      class="centerDialog"
273
-      width="900px"
274
-      title="打印"
275
-      :visible.sync="listVisible"
283
+        class="centerDialog"
284
+        width="900px"
285
+        title="打印"
286
+        :visible.sync="listVisible"
276 287
     >
277 288
       <listPrint></listPrint>
278 289
     </el-dialog>
279 290
     <el-dialog
280
-      class="centerDialog"
281
-      width="900px"
282
-      title="打印"
283
-      :visible.sync="allListVisible"
291
+        class="centerDialog"
292
+        width="900px"
293
+        title="打印"
294
+        :visible.sync="allListVisible"
284 295
     >
285 296
       <allListPrint :paramsObj="paramsObj"></allListPrint>
286 297
     </el-dialog>
@@ -296,22 +307,22 @@
296 307
     <!--</el-dialog>-->
297 308
 
298 309
     <el-dialog
299
-      class="centerDialog"
300
-      width="1200px"
301
-      title="打印"
302
-      :visible.sync="invoiceVisible"
310
+        class="centerDialog"
311
+        width="1200px"
312
+        title="打印"
313
+        :visible.sync="invoiceVisible"
303 314
     >
304 315
       <invoice-print ref="print" :invoiceParams="invoiceParams"></invoice-print>
305 316
     </el-dialog>
306 317
     <el-dialog
307
-      class="centerDialog"
308
-      width="1200px"
309
-      title="打印"
310
-      :visible.sync="settlementVisible"
318
+        class="centerDialog"
319
+        width="1200px"
320
+        title="打印"
321
+        :visible.sync="settlementVisible"
311 322
     >
312 323
       <settlement-print
313
-        ref="print"
314
-        :paramsObj="settlementObj"
324
+          ref="print"
325
+          :paramsObj="settlementObj"
315 326
       ></settlement-print>
316 327
     </el-dialog>
317 328
   </div>
@@ -320,22 +331,18 @@
320 331
 
321 332
 <script>
322 333
 import BreadCrumb from "@/xt_pages/components/bread-crumb";
323
-import {
324
-  getDoctorList,
325
-  getExportConsumeDetailList,
326
-  getHisOrderList,
327
-  Refund,
328
-} from "@/api/his/his";
329
-import { uParseTime } from "@/utils/tools";
334
+import {getDoctorList, getExportConsumeDetailList, getHisOrderList, Refund,} from "@/api/his/his";
335
+import {uParseTime} from "@/utils/tools";
330 336
 // import NewStatementPrint from './newStatementPrint'
331 337
 import NewStatementPrint from "./statementPrint.vue";
332 338
 import listPrint from "./listPrint";
333 339
 import allListPrint from "./allListPrint";
334 340
 import NewStatementPrintTwo from "./newStatementPrintTwo";
335
-import { fetchAllAdminUsers } from "@/api/doctor";
341
+import {fetchAllAdminUsers} from "@/api/doctor";
336 342
 import axios from "axios";
337 343
 import invoicePrint from "./invoicePrint";
338 344
 import settlementPrint from "./settlementPrint";
345
+import {getHisDataTwo} from "../../api/his/his";
339 346
 
340 347
 export default {
341 348
   name: "OutpatientChargesSummary",
@@ -355,8 +362,8 @@ export default {
355 362
       statementVisible9504: false,
356 363
       orderObj9504: {},
357 364
       crumbs: [
358
-        { path: false, name: "门诊收费" },
359
-        { path: false, name: "项目消费明细汇总" },
365
+        {path: false, name: "门诊收费"},
366
+        {path: false, name: "项目消费明细汇总"},
360 367
       ],
361 368
       tableData: [],
362 369
       limit: 10,
@@ -368,8 +375,8 @@ export default {
368 375
       doctors: [],
369 376
       sort_type: 1,
370 377
       sort_types: [
371
-        { value: 1, label: "处方时间" },
372
-        { value: 2, label: "结算时间" },
378
+        {value: 1, label: "处方时间"},
379
+        {value: 2, label: "结算时间"},
373 380
       ],
374 381
       admin_user_id: "",
375 382
       listVisible: false,
@@ -398,8 +405,8 @@ export default {
398 405
         vm.sort_type = vm.$store.getters.pagedata.list.sort_type;
399 406
         setTimeout(() => {
400 407
           vm.getHisOrderList();
401
-        },300)
402
-        
408
+        }, 300)
409
+
403 410
       });
404 411
     } else {
405 412
       next();
@@ -422,13 +429,7 @@ export default {
422 429
     this.getHisOrderList();
423 430
   },
424 431
 
425
- 
426 432
   methods: {
427
-    // watchtoute() {
428
-    //   console.log(this.$router, "iiii");
429
-    //   console.log(this.$route, "iiii");
430
-    // },
431
-
432 433
     setStorage() {
433 434
       this.$store.commit("SET_PAGEDATA", {
434 435
         page: this.page,
@@ -471,64 +472,70 @@ export default {
471 472
     cancelUpload(row) {
472 473
       var that = this;
473 474
       axios
474
-        .get("http://127.0.0.1:9532/zh/api/clearsettle", {
475
-          params: {
476
-            order_id: row.id,
477
-            admin_user_id: this.$store.getters.xt_user.user.id,
478
-          },
479
-        })
480
-        .then(function (response) {
481
-          if (response.data.state == 0) {
482
-            that.$message.error(response.data.msg);
483
-            return false;
484
-          } else {
485
-            if (response.data.data.failed_code == -10) {
486
-              // that.$message.error(response.data.data.msg)
487
-              that
488
-                .$confirm(response.data.data.msg, "医保错误信息", {
489
-                  confirmButtonText: "确 定",
490
-                  type: "warning",
491
-                })
492
-                .then(() => {})
493
-                .catch(() => {});
475
+          .get("http://127.0.0.1:9532/zh/api/clearsettle", {
476
+            params: {
477
+              order_id: row.id,
478
+              admin_user_id: this.$store.getters.xt_user.user.id,
479
+            },
480
+          })
481
+          .then(function (response) {
482
+            if (response.data.state == 0) {
483
+              that.$message.error(response.data.msg);
484
+              return false;
494 485
             } else {
495
-              that.$message.success("撤销成功");
496
-              row.result.id = 0;
486
+              if (response.data.data.failed_code == -10) {
487
+                // that.$message.error(response.data.data.msg)
488
+                that
489
+                    .$confirm(response.data.data.msg, "医保错误信息", {
490
+                      confirmButtonText: "确 定",
491
+                      type: "warning",
492
+                    })
493
+                    .then(() => {
494
+                    })
495
+                    .catch(() => {
496
+                    });
497
+              } else {
498
+                that.$message.success("撤销成功");
499
+                row.result.id = 0;
500
+              }
497 501
             }
498
-          }
499
-        })
500
-        .catch(function (error) {});
502
+          })
503
+          .catch(function (error) {
504
+          });
501 505
     },
502 506
     uploadInfo(row) {
503 507
       var that = this;
504 508
       axios
505
-        .get("http://127.0.0.1:9532/api/settlelist/get", {
506
-          params: {
507
-            order_id: row.id,
508
-            admin_user_id: this.$store.getters.xt_user.user.id,
509
-          },
510
-        })
511
-        .then(function (response) {
512
-          if (response.data.state == 0) {
513
-            that.$message.error(response.data.msg);
514
-            return false;
515
-          } else {
516
-            if (response.data.data.failed_code == -10) {
517
-              // that.$message.error(response.data.data.msg)
518
-              that
519
-                .$confirm(response.data.data.msg, "医保错误信息", {
520
-                  confirmButtonText: "确 定",
521
-                  type: "warning",
522
-                })
523
-                .then(() => {})
524
-                .catch(() => {});
509
+          .get("http://127.0.0.1:9532/api/settlelist/get", {
510
+            params: {
511
+              order_id: row.id,
512
+              admin_user_id: this.$store.getters.xt_user.user.id,
513
+            },
514
+          })
515
+          .then(function (response) {
516
+            if (response.data.state == 0) {
517
+              that.$message.error(response.data.msg);
518
+              return false;
525 519
             } else {
526
-              that.$message.success("上传成功");
527
-              row.result.id = response.data.data.result.id;
520
+              if (response.data.data.failed_code == -10) {
521
+                // that.$message.error(response.data.data.msg)
522
+                that
523
+                    .$confirm(response.data.data.msg, "医保错误信息", {
524
+                      confirmButtonText: "确 定",
525
+                      type: "warning",
526
+                    })
527
+                    .then(() => {
528
+                    })
529
+                    .catch(() => {
530
+                    });
531
+              } else {
532
+                that.$message.success("上传成功");
533
+                row.result.id = response.data.data.result.id;
534
+              }
528 535
             }
529
-          }
530
-        })
531
-        .catch(function (error) {});
536
+          })
537
+          .catch(function (error) {
538
+          });
532 539
     },
533 540
 
534 541
     fetchAllAdminUsers() {
@@ -552,23 +559,24 @@ export default {
552 559
           cancelButtonText: "取 消",
553 560
           type: "warning",
554 561
         })
555
-          .then(() => {
556
-            let params = {
557
-              order_id: row.id,
558
-              patient_id: row.patient_id,
559
-              record_time: this.getTimes(row.settle_accounts_date),
560
-            };
561
-            Refund(params).then((response) => {
562
-              if (response.data.state == 0) {
563
-                this.$message.error(response.data.msg);
564
-                return false;
565
-              } else {
566
-                this.$message({ message: "退费成功", type: "success" });
567
-                this.getHisOrderList();
568
-              }
562
+            .then(() => {
563
+              let params = {
564
+                order_id: row.id,
565
+                patient_id: row.patient_id,
566
+                record_time: this.getTimes(row.settle_accounts_date),
567
+              };
568
+              Refund(params).then((response) => {
569
+                if (response.data.state == 0) {
570
+                  this.$message.error(response.data.msg);
571
+                  return false;
572
+                } else {
573
+                  this.$message({message: "退费成功", type: "success"});
574
+                  this.getHisOrderList();
575
+                }
576
+              });
577
+            })
578
+            .catch(() => {
569 579
             });
570
-          })
571
-          .catch(() => {});
572 580
       } else {
573 581
         var that = this;
574 582
         this.$confirm("是否退费", "退费", {
@@ -576,44 +584,48 @@ export default {
576 584
           cancelButtonText: "取 消",
577 585
           type: "warning",
578 586
         })
579
-          .then(() => {
580
-            let params = {
581
-              order_id: row.id,
582
-              patient_id: row.patient_id,
583
-              record_time: that.getTimes(row.settle_accounts_date),
584
-              admin_user_id: that.$store.getters.xt_user.user.id,
585
-            };
586
-            axios
587
-              .get("http://127.0.0.1:9532/api/refund/post", {
588
-                params: params,
589
-              })
590
-              .then(function (response) {
591
-                if (response.data.state == 0) {
592
-                  that.$message.error(response.data.msg);
593
-                  return false;
594
-                } else {
595
-                  if (response.data.data.failed_code == -10) {
596
-                    // that.$message.error(response.data.data.msg)
597
-                    that
598
-                      .$confirm(response.data.data.msg, "医保错误信息", {
599
-                        confirmButtonText: "确 定",
600
-                        type: "warning",
601
-                      })
602
-                      .then(() => {})
603
-                      .catch(() => {});
604
-                  } else {
605
-                    that.$message({
606
-                      message: "退费成功",
607
-                      type: "success",
608
-                      duration: 5000,
609
-                    });
610
-                    that.getHisOrderList();
611
-                  }
612
-                }
613
-              })
614
-              .catch(function (error) {});
615
-          })
616
-          .catch(() => {});
587
+            .then(() => {
588
+              let params = {
589
+                order_id: row.id,
590
+                patient_id: row.patient_id,
591
+                record_time: that.getTimes(row.settle_accounts_date),
592
+                admin_user_id: that.$store.getters.xt_user.user.id,
593
+              };
594
+              axios
595
+                  .get("http://127.0.0.1:9532/api/refund/post", {
596
+                    params: params,
597
+                  })
598
+                  .then(function (response) {
599
+                    if (response.data.state == 0) {
600
+                      that.$message.error(response.data.msg);
601
+                      return false;
602
+                    } else {
603
+                      if (response.data.data.failed_code == -10) {
604
+                        // that.$message.error(response.data.data.msg)
605
+                        that
606
+                            .$confirm(response.data.data.msg, "医保错误信息", {
607
+                              confirmButtonText: "确 定",
608
+                              type: "warning",
609
+                            })
610
+                            .then(() => {
611
+                            })
612
+                            .catch(() => {
613
+                            });
614
+                      } else {
615
+                        that.$message({
616
+                          message: "退费成功",
617
+                          type: "success",
618
+                          duration: 5000,
619
+                        });
620
+                        that.getHisOrderList();
621
+                      }
622
+                    }
623
+                  })
624
+                  .catch(function (error) {
625
+                  });
626
+            })
627
+            .catch(() => {
628
+            });
617 629
       }
618 630
     },
619 631
     toPrint(row) {
@@ -657,7 +669,161 @@ export default {
657 669
         order_id: row.id,
658 670
       };
659 671
       this.settlementObj = obj;
672
+    }, export_detail_two() {
673
+      let params = {};
674
+      getHisDataTwo(params).then((response) => {
675
+        if (response.data.state == 0) {
676
+          this.$message.error(response.data.msg);
677
+          return false;
678
+        } else {
679
+          let list = [];
680
+          console.log(response.data.data.order)
681
+          for (let i = 0; i < response.data.data.order.length; i++) {
682
+            let order = response.data.data.order[i];
683
+            for (let b = 0; b < order.info.length; b++) {
684
+              let obj = {
685
+                index: b + 1,
686
+                org_name: "肇庆三鹤血液透析中心",
687
+                name: order.psn_name,
688
+                id_card_no: order.certno,
689
+                level: "未定级",
690
+                psn_type: order.psn_type,
691
+                date: "2022年3月",
692
+                start_time: order.his.in_hosptial_time,
693
+                end_time: order.his.out_hosptial_time,
694
+                total: order.info[b].det_item_fee_sumamt,
695
+                fund_total: order.info[b].inscp_scp_amt,
696
+                patient_id: order.info[b].patient_id,
697
+                dialysis_time:this.getTimes(order.info[b].upload_date)
698
+
699
+              }
700
+              // if (order.info[b].advice_id > 0 && order.info[b].project_id == 0) {
701
+              //   obj["dialysis_time"] = this.getTimes(order.info[b].advice_date)
702
+              // } else if (order.info[b].advice_id == 0 && order.info[b].project_id > 0) {
703
+              //   obj["dialysis_time"] = this.getTimes(order.info[b].record_date)
704
+              // }
705
+              if (order.psn_type == "11") {
706
+
707
+                obj["psn_type"] = "职工在职"
708
+              } else if (order.psn_type == "12") {
709
+                obj["psn_type"] = "职工退休"
710
+
711
+              } else if (order.psn_type == "13") {
712
+                obj["psn_type"] = "离休"
713
+
714
+              } else if (order.psn_type == "14") {
715
+                obj["psn_type"] = "居民医保"
716
+
717
+              } else if (order.psn_type == "15") {
718
+
719
+                obj["psn_type"] = "居民医保"
720
+
721
+              } else if (order.psn_type == "16") {
722
+                obj["psn_type"] = "居民医保"
723
+
724
+              }
725
+
726
+              list.push(obj)
727
+            }
728
+          }
729
+          console.log(list)
730
+
731
+          var new_list = this.unique_two(list)
732
+
733
+          for (let i = 0; i < new_list.length; i++) {
734
+            let total = 0
735
+            let fund_total = 0
736
+            for (let b = 0; b < list.length; b++) {
737
+              if (new_list[i].patient_id == list[b].patient_id && new_list[i].dialysis_time == list[b].dialysis_time) {
738
+                total = total + list[b].total
739
+                fund_total = fund_total + list[b].fund_total
740
+              }
741
+            }
742
+            new_list[i].total = total.toFixed(2)
743
+            new_list[i].fund_total = fund_total.toFixed(2)
744
+
745
+          }
746
+
747
+          console.log(new_list)
748
+
749
+          var tarList = [];
750
+          for (let i = 0; i < new_list.length; i++) {
751
+            let obj = {
752
+              "序号": i + 1,
753
+              "医疗机构名称": new_list[i].org_name,
754
+              "姓名": new_list[i].name,
755
+              "身份证号": new_list[i].id_card_no,
756
+              "医院等级": new_list[i].level,
757
+              "参保类型": new_list[i].psn_type,
758
+              "费用所属期": new_list[i].date,
759
+              "开始就医时间": new_list[i].start_time,
760
+              "结束就医时间": new_list[i].end_time,
761
+              "透析日期": new_list[i].dialysis_time,
762
+              "本次透析医疗总金额": new_list[i].total,
763
+              "本次透析医保结算费用金额": new_list[i].fund_total,
764
+
765
+            }
766
+            tarList.push(obj)
767
+
768
+          }
769
+
770
+          import("@/vendor/Export2Excel").then((excel) => {
771
+            const tHeader = [
772
+              "序号",
773
+              "医疗机构名称",
774
+              "姓名",
775
+              "身份证号",
776
+              "医院等级",
777
+              "参保类型",
778
+              "费用所属期",
779
+              "开始就医时间",
780
+              "结束就医时间",
781
+              "透析日期",
782
+              "本次透析医疗总金额",
783
+              "本次透析医保结算费用金额",
784
+
785
+            ];
786
+            const filterVal = [
787
+              "序号",
788
+              "医疗机构名称",
789
+              "姓名",
790
+              "身份证号",
791
+              "医院等级",
792
+              "参保类型",
793
+              "费用所属期",
794
+              "开始就医时间",
795
+              "结束就医时间",
796
+              "透析日期",
797
+              "本次透析医疗总金额",
798
+              "本次透析医保结算费用金额",
799
+
800
+            ];
801
+            const data = this.formatJson(filterVal, tarList);
802
+            excel.export_json_to_excel({
803
+              header: tHeader,
804
+              data,
805
+              filename: "消费明细",
806
+            });
807
+          });
808
+        }
809
+      });
810
+    }, unique_two(array) {
811
+      // res用来存储结果
812
+      var res = []
813
+      for (var i = 0, arrayLen = array.length; i < arrayLen; i++) {
814
+        for (var j = 0, resLen = res.length; j < resLen; j++) {
815
+          if (array[i].patient_id === res[j].patient_id && array[i].dialysis_time === res[j].dialysis_time) {
816
+            break
817
+          }
818
+        }
819
+        // 如果array[i]是唯一的,那么执行完循环,j等于resLen
820
+        if (j === resLen) {
821
+          res.push(array[i])
822
+        }
823
+      }
824
+      return res
660 825
     },
826
+
661 827
     export_detail() {
662 828
       let params = {
663 829
         start_time: this.start_time,
@@ -684,8 +850,8 @@ export default {
684 850
 
685 851
             let time = "";
686 852
             if (
687
-              order.his_patient != null &&
688
-              order.his_patient.number.length > 0
853
+                order.his_patient != null &&
854
+                order.his_patient.number.length > 0
689 855
             ) {
690 856
               number = order.his_patient.number;
691 857
             }
@@ -705,9 +871,9 @@ export default {
705 871
             }
706 872
 
707 873
             if (
708
-              order.p_info != null &&
709
-              order.p_info.department != null &&
710
-              order.p_info.department.name.length > 0
874
+                order.p_info != null &&
875
+                order.p_info.department != null &&
876
+                order.p_info.department.name.length > 0
711 877
             ) {
712 878
               department = order.p_info.department.name;
713 879
             }
@@ -932,20 +1098,20 @@ export default {
932 1098
               let name = "";
933 1099
               let selfpay_prop = "";
934 1100
               if (
935
-                order.order_info[b].advice.id == 0 &&
936
-                order.order_info[b].project.id > 0
1101
+                  order.order_info[b].advice.id == 0 &&
1102
+                  order.order_info[b].project.id > 0
937 1103
               ) {
938 1104
                 item_name = order.order_info[b].project.project.project_name;
939 1105
                 item_code = order.order_info[b].project.project.medical_code;
940 1106
                 price = order.order_info[b].pric;
941 1107
                 unit = order.order_info[b].project.project.unit;
942 1108
               } else if (
943
-                order.order_info[b].advice.id > 0 &&
944
-                order.order_info[b].project.id == 0
1109
+                  order.order_info[b].advice.id > 0 &&
1110
+                  order.order_info[b].project.id == 0
945 1111
               ) {
946 1112
                 item_name = order.order_info[b].advice.advice_name;
947 1113
                 item_code =
948
-                  order.order_info[b].advice.drug.medical_insurance_number;
1114
+                    order.order_info[b].advice.drug.medical_insurance_number;
949 1115
                 price = order.order_info[b].pric;
950 1116
                 unit = order.order_info[b].advice.prescribing_number_unit;
951 1117
               }
@@ -1008,7 +1174,7 @@ export default {
1008 1174
     },
1009 1175
     toDetail(row) {
1010 1176
       this.$router.push(
1011
-        "/outpatientCharges/summaryDetail?patient_id=" +
1177
+          "/outpatientCharges/summaryDetail?patient_id=" +
1012 1178
           row.patient.id +
1013 1179
           "&number=" +
1014 1180
           row.number +

+ 1 - 1
src/xt_pages/outpatientDoctorStation/doctorDesk.vue Bestand weergeven

@@ -445,7 +445,7 @@ export default {
445 445
     },
446 446
 
447 447
     // 电子病历打印
448
-    opentwo(index) {
448
+    opentwo(index) {  
449 449
       if (index == 1) {
450 450
         if (this.patientInfo.id == undefined) {
451 451
           this.$message.error('请先选择病人')

+ 43 - 6
src/xt_pages/outpatientDoctorStation/recordPrint.vue Bestand weergeven

@@ -13,7 +13,13 @@
13 13
 
14 14
     <div class="dialysisPage" style="padding-top: 40px">
15 15
       <printOne
16
-        v-if="org_id != 10217 && org_id != 9675 && org_id != 9671 && org_id != 0 &&org_id != 10164 && org_id == 10188"
16
+        v-if="
17
+          org_id != 10217 && org_id != 10188 &&org_id != 10318&&
18
+          org_id != 9675 &&
19
+          org_id != 9671 &&
20
+          org_id != 0 &&
21
+          org_id != 10164 
22
+        "
17 23
         ref="printOne"
18 24
         v-bind:childResponse="childResponse"
19 25
         :patient="patient"
@@ -23,7 +29,12 @@
23 29
       ></printOne>
24 30
       <printTwo
25 31
         v-if="
26
-          org_id == 10217 || org_id == 0 || org_id == 9675 || org_id == 9671 || org_id == 10164 ||org_id == 10188
32
+          org_id == 10217 ||
33
+           org_id == 10188 ||
34
+          org_id == 9675 ||
35
+          org_id == 9671 ||
36
+          org_id == 10164
37
+         
27 38
         "
28 39
         ref="printTwo"
29 40
         v-bind:childResponse="childResponse"
@@ -32,6 +43,16 @@
32 43
         :history="history"
33 44
         :patientid="patientid"
34 45
       ></printTwo>
46
+      <printThree
47
+        v-if="org_id == 10318 || org_id == 0"
48
+        ref="printThree"
49
+        v-bind:childResponse="childResponse"
50
+        :patient="patient"
51
+        :hispatient="hispatient"
52
+        :history="history"
53
+        :patientid="patientid"
54
+      >
55
+      </printThree>
35 56
     </div>
36 57
   </div>
37 58
 </template>
@@ -46,12 +67,14 @@ import { getSchedulePatientList } from "@/api/his/his";
46 67
 import { getPatientCaseHistory } from "@/api/project/project";
47 68
 import printOne from "./recordTemplate/printOne";
48 69
 import printTwo from "./recordTemplate/printTwo";
70
+import printThree from "./recordTemplate/printThree";
49 71
 export default {
50 72
   name: "dialysisPrintOrder",
51 73
   components: {
52 74
     BreadCrumb,
53 75
     printOne,
54 76
     printTwo,
77
+    printThree,
55 78
   },
56 79
   props: {
57 80
     patientid: Number,
@@ -77,8 +100,10 @@ export default {
77 100
   methods: {
78 101
     show(val, id) {
79 102
       this.org_id = id;
80
-      if (id == 10217 || id == 9675 || id == 9671 || id == 0) {
103
+      if (id == 10217 || id == 9675 || id == 9671|| id == 10188 ) {
81 104
         this.$refs.printTwo.show(val);
105
+      } else if (id == 10318|| id == 0) {
106
+        this.$refs.printThree.show(val);
82 107
       } else {
83 108
         this.$refs.printOne.show(val);
84 109
       }
@@ -105,6 +130,8 @@ export default {
105 130
       }
106 131
       return "";
107 132
     },
133
+
134
+    
108 135
     printThisPage() {
109 136
       var ptime = Math.round(new Date().getTime() / 1000);
110 137
       this.print_time = uParseTime(ptime, "{y}-{m}-{d} {h}:{i}");
@@ -113,8 +140,10 @@ export default {
113 140
         "@media print {.printTitle{font-size: 22px;text-align: center;font-weight: bold;}.infoTitle{display: flex;margin-top:10px;padding:0 10px;}.infoTitle div{width: 200px;}.otherInfo{display: flex;margin-top:20px;padding:0 10px;}.otherInfo span{display:inline-block;}.recordTitle{display: flex;margin-top:10px;line-height: 24px;padding:0 10px;border-bottom: 2px solid #000;}.recordTitle div{width: 200px;}}";
114 141
       const style1 =
115 142
         "@media print {.printTitle{font-size: 22px;text-align: center;font-weight: bold;}.infoTitle{display: flex;margin-top:10px;line-height: 24px;padding:0 10px;} .infoTitle div{width: 200px;} .infoTitle .address_slot{width: 400px;} .infoTitle .name_slot{width: 250px;}.otherInfo{display: flex;margin-top:10px;line-height: 24px;padding:0 10px;}.otherInfo span{display:inline-block;}.recordTitle{display: flex;justify-content: center;flex-direction: column;margin-top:10px;line-height: 24px;padding:0 10px;border-top: 1px solid;}.recordTitle div{width: 100%;text-align: center;} .recordTitle .recordContent{width: 100%;height: fit-content;min-height: 150px;text-align: left;} .endInfo{display: flex;flex-direction: column;justify-content: end;margin-top: 10px;line-height: 24px;} .endInfo div{width: 300px;} .record_Title{display: flex;margin-top:10px;line-height: 24px;padding:0 10px;border-bottom: 2px solid #000;} .record_Title div{width: 200px;}}";
143
+      const style2 =
144
+        "@media print {.printTitle{font-size: 22px;text-align: center;font-weight: bold;padding-bottom: 10px;border-bottom: 1px solid;}.infoTitle{display: flex;margin-top:10px;line-height: 24px;padding:0 10px;} .infoTitle div{width: 200px;} .infoTitle .address_slot{width: 400px;} .infoTitle .name_slot {width: 300px;display: flex;}.name_slot span {display: inline-block;min-width: 70px;border-bottom: 1px solid;} .infoTitle .name_slot_2 {width: 250px;display: flex;} .name_slot_2 .name_slot_1{  display: inline-block;min-width: 70px;border-bottom: 1px solid;} .infoTitle .full_slot {width: 100%;}.infoTitle .full_slot .id_card{border: 1px solid;display: inline-block;width: 18px;height: 18px;text-align: center;margin-right: 6px;} .address_slot_1 span {display: inline-block;min-width: 60px;border-bottom: 1px solid;} .otherInfo{display: flex;margin-top:10px;line-height: 24px;padding:0 10px;}.otherInfo span{display:inline-block;}.recordTitle{display: flex;justify-content: center;flex-direction: column;margin-top:10px;line-height: 24px;padding:0 10px;border-top: 1px solid;}.recordTitle div{width: 100%;text-align: center;} .recordTitle .recordContent{width: 100%;height: fit-content;min-height: 150px;text-align: left;} .endInfo{display: flex;flex-direction: column;justify-content: end;margin-top: 10px;line-height: 24px;} .endInfo div{width: 300px;} .record_Title{display: flex;margin-top:10px;line-height: 24px;padding:0 10px;border-bottom: 2px solid #000;} .record_Title div{width: 200px;}}";
116 145
 
117
-      if (this.org_id != 10217 && this.org_id != 0 && this.org_id != 9675) {
146
+      if (this.org_id != 10217 && this.org_id != 0 && this.org_id != 9675 && this.org_id != 10318 &&this.org_id != 10188) {
118 147
         printJS({
119 148
           printable: "prescription-print",
120 149
           type: "html",
@@ -123,8 +152,8 @@ export default {
123 152
         });
124 153
       } else if (
125 154
         this.org_id == 10217 ||
126
-        this.org_id == 0 ||
127
-        this.org_id == 9675
155
+        this.org_id == 9675 ||
156
+        this.org_id == 10188
128 157
       ) {
129 158
         printJS({
130 159
           printable: "prescription-print",
@@ -132,6 +161,14 @@ export default {
132 161
           style: style1,
133 162
           scanStyles: false,
134 163
         });
164
+      }else if(this.org_id == 10318||this.org_id == 0 )
165
+      {
166
+        printJS({
167
+          printable: "prescription-print",
168
+          type: "html",
169
+          style: style2,
170
+          scanStyles: false,
171
+        });
135 172
       }
136 173
     },
137 174
 

+ 654 - 0
src/xt_pages/outpatientDoctorStation/recordTemplate/printThree.vue Bestand weergeven

@@ -0,0 +1,654 @@
1
+<template>
2
+  <div id="prescription-print">
3
+    <div class="prescription-print">
4
+      <div class="printTitle">{{ orgname }}门诊血液净化治疗病历首页</div>
5
+      <!-- <div class="record_Title">
6
+            <div>年龄:{{patient.age?patient.age:''}}岁</div>
7
+            <div>透析病历号:{{patient.id?patient.id:''}}</div>
8
+        </div> -->
9
+      <div class="infoTitle" style="margin-top: 20px">
10
+        <div class="name_slot">
11
+          首次治疗日期:<span>{{ getTime(patient.first_dialysis_date) }}</span>
12
+        </div>
13
+        <div class="name_slot">医保卡号:<span></span></div>
14
+        <div class="name_slot">
15
+          ID号:<span class="name_slot_1" style="min-width: 100px"></span>
16
+        </div>
17
+      </div>
18
+      <div
19
+        class="infoTitle"
20
+        style="margin-top: 20px; padding-bottom: 20px; border-bottom: 1px solid"
21
+      >
22
+        <div class="name_slot_2" style="width: 273px">
23
+          诊断:<span class="name_slot_1" style="min-width: 100px"></span>
24
+        </div>
25
+        <div class="name_slot" style="width: 640px">
26
+          合并症或并发症:<span style="width: 220px"></span>
27
+        </div>
28
+      </div>
29
+
30
+      <div class="infoTitle" style="margin-top: 15px">
31
+        <div class="name_slot">
32
+          姓名:<span style="min-width: 180px">{{
33
+            patient.name ? patient.name : ""
34
+          }}</span>
35
+        </div>
36
+        <div>
37
+          性别:
38
+<!--          <label-box-->
39
+<!--            :isChecked="patient.gender == 1 ? true : false"-->
40
+<!--            showValue="男"-->
41
+<!--          ></label-box>-->
42
+<!--          <label-box-->
43
+<!--            :isChecked="patient.gender == 2 ? true : false"-->
44
+<!--            showValue="女"-->
45
+<!--          ></label-box>-->
46
+        </div>
47
+        <!-- <div class="address_slot">
48
+          家庭住址:<span>{{ patient.home_address ? patient.home_address : "" }}</span>
49
+        </div> -->
50
+      </div>
51
+
52
+      <div class="infoTitle">
53
+        <div class="full_slot">
54
+          身份证号:
55
+          <span class="id_card" v-for="i in patient.id_card_no" :key="i">{{
56
+            i
57
+          }}</span>
58
+        </div>
59
+      </div>
60
+
61
+      <div class="infoTitle">
62
+        <div class="address_slot_1" style="width: 100%">
63
+          现住址(详填)<span></span>省<span></span>市<span></span>区<span
64
+            style="min-width: 190px"
65
+          ></span>
66
+        </div>
67
+      </div>
68
+      <div class="infoTitle">
69
+        <div class="address_slot_1" style="width: 100%">
70
+          户口住址(详填)<span></span>省<span></span>市<span
71
+          ></span>县(区)<span style="min-width: 135px"></span>
72
+        </div>
73
+      </div>
74
+      <div class="infoTitle">
75
+        <div class="address_slot_1" style="width: 100%">
76
+          工作单位:<span>{{ patient.work_unit }}</span
77
+          >地址:<span></span>省<span></span>市/县<span
78
+            style="min-width: 174px"
79
+          ></span>
80
+        </div>
81
+      </div>
82
+      <div class="infoTitle">
83
+        <div class="name_slot">
84
+          电话:<span>{{ patient.phone ? patient.phone : "" }}</span>
85
+        </div>
86
+        <div class="name_slot">手机:<span></span></div>
87
+        <div class="name_slot">
88
+          联系人:<span>{{ patient.contact_name }}</span>
89
+        </div>
90
+        <div class="name_slot">关系:<span></span></div>
91
+      </div>
92
+
93
+      <table class="print-table" border="1" style="margin-top: 20px">
94
+        <thead>
95
+          <tr>
96
+            <td colspan="2">干体重</td>
97
+            <td colspan="2">血管通路</td>
98
+            <td colspan="2">抗凝剂</td>
99
+          </tr>
100
+          <tr>
101
+            <td>日期</td>
102
+            <td>体重(kg)</td>
103
+            <td>日期</td>
104
+            <td>名称</td>
105
+            <td>日期</td>
106
+            <td>种类</td>
107
+          </tr>
108
+        </thead>
109
+        <tbody class="print-table-body">
110
+          <tr v-for="(index, el) in table_list" :key="index">
111
+            <td></td>
112
+            <td></td>
113
+            <td></td>
114
+            <td></td>
115
+            <td></td>
116
+            <td></td>
117
+          </tr>
118
+          <tr>
119
+            <td>
120
+              <table class="print-table-no" border="1">
121
+                <tr>
122
+                  <td rowspan="6">传 <br />染<br />病<br />等<br />级</td>
123
+                  <td>日期</td>
124
+                </tr>
125
+                <tr v-for="(index, list) in table_list_child" :key="index">
126
+                  <td></td>
127
+                </tr>
128
+                <tr></tr>
129
+              </table>
130
+            </td>
131
+            <td>
132
+              <table class="print-table-no-1" border="1">
133
+                <tr class="no-1-tr">
134
+                  <td>名称</td>
135
+                </tr>
136
+                <tr v-for="(index, list) in table_list_child" :key="index">
137
+                  <td></td>
138
+                </tr>
139
+                <tr></tr>
140
+              </table>
141
+            </td>
142
+
143
+            <td>
144
+              <table class="print-table-no" border="1">
145
+                <tr>
146
+                  <td rowspan="6" style="line-height: 50px">
147
+                    肿<br />瘤<br />登<br />记<br />
148
+                  </td>
149
+                  <td>日期</td>
150
+                </tr>
151
+                <tr v-for="(index, list) in table_list_child" :key="index">
152
+                  <td></td>
153
+                </tr>
154
+                <tr></tr>
155
+              </table>
156
+            </td>
157
+            <td>
158
+              <table class="print-table-no-1" border="1">
159
+                <tr class="no-1-tr">
160
+                  <td>名称</td>
161
+                </tr>
162
+                <tr v-for="(index, list) in table_list_child" :key="index">
163
+                  <td></td>
164
+                </tr>
165
+                <tr></tr>
166
+              </table>
167
+            </td>
168
+
169
+            <td>
170
+              <table class="print-table-no" border="1">
171
+                <tr>
172
+                  <td rowspan="6" style="line-height: 50px">
173
+                    过<br />敏<br />反<br />应<br />
174
+                  </td>
175
+                  <td>日期</td>
176
+                </tr>
177
+                <tr v-for="(index, list) in table_list_child" :key="index">
178
+                  <td></td>
179
+                </tr>
180
+                <tr></tr>
181
+              </table>
182
+            </td>
183
+            <td>
184
+              <table class="print-table-no-1" border="1">
185
+                <tr class="no-1-tr">
186
+                  <td>药物反应</td>
187
+                </tr>
188
+                <tr v-for="(index, list) in table_list_child" :key="index">
189
+                  <td></td>
190
+                </tr>
191
+                <tr></tr>
192
+              </table>
193
+            </td>
194
+          </tr>
195
+        </tbody>
196
+      </table>
197
+    </div>
198
+    <div class="printTitle" style="border-bottom: none">
199
+      {{ orgname }}血液透析治疗方案调整
200
+    </div>
201
+    <table class="print-table-end" border="1" style="margin-top: 20px">
202
+      <thead>
203
+        <tr>
204
+          <td width="12.5%">治疗频率</td>
205
+          <td width="12.5%">调整日期</td>
206
+          <td>治疗方式</td>
207
+          <td>调整日期</td>
208
+          <td>钙浓度</td>
209
+          <td>调整日期</td>
210
+          <td>钾浓度</td>
211
+          <td width="12.5%">调整日期</td>
212
+        </tr>
213
+      </thead>
214
+
215
+      <tbody>
216
+        <tr v-for="(index, item) in tablelist_2" :key="index">
217
+          <td></td>
218
+          <td></td>
219
+          <td></td>
220
+          <td></td>
221
+          <td></td>
222
+          <td></td>
223
+          <td></td>
224
+          <td></td>
225
+        </tr>
226
+      </tbody>
227
+    </table>
228
+    <!-- <div class="prescription-print">
229
+      <div class="recordTitle">
230
+        <div>体格检查</div>
231
+        <div
232
+          class="recordContent"
233
+          style="height: fit-content; min-height: 250px"
234
+        >
235
+          <div>
236
+            <span
237
+              >体温:{{
238
+                history.temperature ? history.temperature + "℃" : "/"
239
+              }}</span
240
+            >
241
+            <span
242
+              >脉搏:{{ history.pulse ? history.pulse + "次/分" : "/" }}</span
243
+            >
244
+            <span
245
+              >呼吸:{{
246
+                history.breathing ? history.breathing + "次/分" : "/"
247
+              }}</span
248
+            >
249
+            <span>血压:{{ history.sbp }}/{{ history.dbp }}mmHg</span>
250
+          </div>
251
+          <div style="text-align: left">
252
+            {{ history.physical_examination }}
253
+          </div>
254
+        </div>
255
+      </div>
256
+      <div class="recordTitle">
257
+        <div>专科检查</div>
258
+        <div class="recordContent">{{ history.special_inspection }}</div>
259
+      </div>
260
+      <div class="recordTitle" style="border-bottom: 1px solid">
261
+        <div>实验室及器械检查</div>
262
+        <div
263
+          class="recordContent"
264
+          style="height: fit-content; min-height: 250px"
265
+        >
266
+          {{ history.lab_apparatus }}
267
+        </div>
268
+      </div>
269
+      <div style="display: flex; justify-content: flex-end">
270
+        <div class="endInfo">
271
+          <div style="height: 100px">
272
+            诊断:{{ history.diagnostic ? history.diagnostic : "" }}
273
+          </div>
274
+          <div style="display: flex">
275
+            <div>
276
+              医师:{{
277
+                getDoctor(history.doctor) ? getDoctor(history.doctor) : ""
278
+              }}
279
+            </div>
280
+            <div>手签:</div>
281
+          </div>
282
+          <div
283
+            style="text-align: center; letter-spacing: 3px; padding-top: 20px"
284
+          >
285
+            {{ getTime(history.record_date) }}
286
+          </div>
287
+        </div>
288
+      </div>
289
+    </div> -->
290
+  </div>
291
+</template>
292
+<script>
293
+import { jsGetAge, uParseTime } from "@/utils/tools";
294
+
295
+import { getDataConfig } from "@/utils/data";
296
+import { getAllDoctorList, getPatientCaseHistory } from "@/api/project/project";
297
+import { getAccessList } from "@/api/patient";
298
+// import LabelBox from "../zujian/labelbox.vue";
299
+// import CheckBox from "../zujian/checkbox.vue";
300
+export default {
301
+  props: {
302
+    patient: Object,
303
+    hispatient: Object,
304
+    patientid: Number,
305
+    //   history:Object,
306
+  },
307
+  components: {
308
+    // LabelBox,
309
+    // CheckBox,
310
+  },
311
+  data() {
312
+    return {
313
+      educationOptions: [],
314
+      departmentList: [],
315
+      orgname: "",
316
+      history: {},
317
+      printDate: "",
318
+      accessList: {},
319
+      blood_access_part_opera: [],
320
+      table_list: [],
321
+      table_list_child: [],
322
+      tablelist_2: [],
323
+    };
324
+  },
325
+
326
+  methods: {
327
+    // 默认表格行数
328
+    gettable() {
329
+      let obj = {
330
+        date1: "2020-06-28",
331
+        weight: "00",
332
+        date2: "2020-06-28",
333
+        name: "hh",
334
+        date3: "2020-06-28",
335
+        type: "ss",
336
+      };
337
+      if (this.table_list.length < 12) {
338
+        var nl = 12 - this.table_list.length;
339
+        for (let index = 0; index < nl; index++) {
340
+          this.table_list.push([]);
341
+        }
342
+      }
343
+      if (this.table_list_child.length < 5) {
344
+        var nl = 5 - this.table_list_child.length;
345
+        for (let index = 0; index < nl; index++) {
346
+          this.table_list_child.push([]);
347
+        }
348
+      }
349
+
350
+      if (this.tablelist_2.length < 5) {
351
+        var nl = 5 - this.tablelist_2.length;
352
+        for (let index = 0; index < nl; index++) {
353
+          this.tablelist_2.push([]);
354
+        }
355
+      }
356
+      console.log(this.table_list, "this.table_list");
357
+    },
358
+
359
+    getAge(patient) {
360
+      var thisLen = patient.id_card_no.length;
361
+      var birth = "";
362
+      if (thisLen == 15) {
363
+        birth = "19" + patient.id_card_no.substr(6, 6);
364
+      } else {
365
+        birth = patient.id_card_no.substr(6, 8);
366
+      }
367
+      var births =
368
+        birth.substr(0, 4) +
369
+        "-" +
370
+        birth.substr(4, 2) +
371
+        "-" +
372
+        birth.substr(6, 2);
373
+      return jsGetAge(births, "-");
374
+    },
375
+    show(val) {
376
+      this.patientid = val;
377
+      this.getAllDoctorList();
378
+      this.getPatientCaseHistory();
379
+    },
380
+    getProfession(id) {
381
+      var name = "";
382
+      for (let i = 0; i < this.educationOptions.length; i++) {
383
+        if (id == this.educationOptions[i].id) {
384
+          name = this.educationOptions[i].name;
385
+        }
386
+      }
387
+      return name;
388
+    },
389
+    getAllDoctorList() {
390
+      getAllDoctorList().then((response) => {
391
+        if (response.data.state == 1) {
392
+          var doctor = response.data.data.doctor;
393
+
394
+          this.doctorList = doctor;
395
+          var department = response.data.data.department;
396
+          this.departmentList = department;
397
+        }
398
+      });
399
+    },
400
+    getDoctor(id) {
401
+      var name = "";
402
+      for (let i = 0; i < this.doctorList.length; i++) {
403
+        if (id == this.doctorList[i].admin_user_id) {
404
+          name = this.doctorList[i].user_name;
405
+        }
406
+      }
407
+      return name;
408
+    },
409
+    getPatientCaseHistory() {
410
+      const params = {
411
+        patient_id: this.patientid,
412
+      };
413
+      getPatientCaseHistory(params).then((response) => {
414
+        if (response.data.state == 1) {
415
+          var patient = response.data.data.patient;
416
+          this.patient = patient;
417
+          var history = response.data.data.history;
418
+          this.history = history;
419
+          var hispatient = response.data.data.hispatient;
420
+          this.hispatient = hispatient;
421
+          var accessList = response.data.data.accessList;
422
+          this.accessList = accessList;
423
+        }
424
+      });
425
+    },
426
+    getDeparment(id) {
427
+      var name = "";
428
+      for (let i = 0; i < this.departmentList.length; i++) {
429
+        if (id == this.departmentList[i].id) {
430
+          name = this.departmentList[i].name;
431
+        }
432
+      }
433
+      return name;
434
+    },
435
+    getTime(val) {
436
+      if (val < 0) {
437
+        return "";
438
+      }
439
+      if (val == "") {
440
+        return "";
441
+      } else {
442
+        return uParseTime(val, "{y}-{m}-{d}");
443
+      }
444
+    },
445
+    getAccessList() {
446
+      getAccessList().then((response) => {
447
+        if (response.data.state == 1) {
448
+          var blood_access_part_opera =
449
+            response.data.data.blood_access_part_opera;
450
+          this.blood_access_part_opera = blood_access_part_opera;
451
+        }
452
+      });
453
+    },
454
+    getAccess(id) {
455
+      var name = "";
456
+      for (let i = 0; i < this.blood_access_part_opera.length; i++) {
457
+        if (id == this.blood_access_part_opera[i].value) {
458
+          name = this.blood_access_part_opera[i].name;
459
+        }
460
+      }
461
+      return name;
462
+    },
463
+  },
464
+  created() {
465
+    this.gettable();
466
+    this.educationOptions = getDataConfig("patient", "education_types");
467
+    // this.getAllDoctorList();
468
+    // this.getPatientCaseHistory();
469
+    // this.getAccessList();
470
+    var xtuser = this.$store.getters.xt_user;
471
+    this.orgname = xtuser.org.org_name;
472
+    var data = new Date();
473
+    var month =
474
+      data.getMonth() < 9 ? "0" + (data.getMonth() + 1) : data.getMonth() + 1;
475
+    var date = data.getDate() <= 9 ? "0" + data.getDate() : data.getDate();
476
+    this.printDate = data.getFullYear() + "-" + month + "-" + date;
477
+  },
478
+};
479
+</script>
480
+
481
+
482
+<style lang="scss" scoped>
483
+.prescription-print {
484
+  -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27),
485
+    0 0 60px rgba(0, 0, 0, 0.06) inset;
486
+  -moz-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27),
487
+    0 0 40px rgba(0, 0, 0, 0.06) inset;
488
+  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 40px rgba(0, 0, 0, 0.06) inset;
489
+  margin-bottom: 20px;
490
+  padding: 20px 10px;
491
+}
492
+.printTitle {
493
+  font-size: 22px;
494
+  text-align: center;
495
+  font-weight: bold;
496
+  padding-bottom: 10px;
497
+  border-bottom: 1px solid;
498
+}
499
+.infoTitle {
500
+  display: flex;
501
+  margin-top: 10px;
502
+  line-height: 24px;
503
+  padding: 0 10px;
504
+}
505
+.infoTitle div {
506
+  width: 200px;
507
+}
508
+
509
+.infoTitle .address_slot {
510
+  width: 400px;
511
+}
512
+.infoTitle .full_slot {
513
+  width: 100%;
514
+}
515
+
516
+.infoTitle .full_slot .id_card {
517
+  border: 1px solid;
518
+  display: inline-block;
519
+  width: 18px;
520
+  height: 18px;
521
+  text-align: center;
522
+  margin-right: 6px;
523
+}
524
+
525
+.infoTitle .name_slot {
526
+  width: 250px;
527
+  display: flex;
528
+}
529
+
530
+// .name_slot_2{
531
+//     min-width: 100px;
532
+//     display: inline-block;
533
+//     border-bottom: 1px solid;
534
+// }
535
+.name_slot_1 {
536
+  display: inline-block;
537
+  min-width: 70px;
538
+  border-bottom: 1px solid;
539
+}
540
+
541
+.name_slot span {
542
+  display: inline-block;
543
+  min-width: 70px;
544
+  border-bottom: 1px solid;
545
+}
546
+
547
+.address_slot_1 span {
548
+  display: inline-block;
549
+  min-width: 60px;
550
+  border-bottom: 1px solid;
551
+}
552
+
553
+.otherInfo {
554
+  display: flex;
555
+  margin-top: 10px;
556
+  line-height: 24px;
557
+  padding: 0 10px;
558
+}
559
+.endInfo {
560
+  display: flex;
561
+  flex-direction: column;
562
+  justify-content: end;
563
+  margin-top: 10px;
564
+  line-height: 24px;
565
+}
566
+.endInfo div {
567
+  width: 300px;
568
+}
569
+.recordTitle {
570
+  display: flex;
571
+  justify-content: center;
572
+  flex-direction: column;
573
+  margin-top: 10px;
574
+  line-height: 24px;
575
+  padding: 0 10px;
576
+  border-top: 1px solid;
577
+}
578
+.recordTitle div {
579
+  width: 100%;
580
+  text-align: center;
581
+}
582
+.recordTitle .recordContent {
583
+  width: 100%;
584
+  height: fit-content;
585
+  min-height: 150px;
586
+  text-align: left;
587
+}
588
+
589
+.record_Title {
590
+  display: flex;
591
+  margin-top: 10px;
592
+  line-height: 24px;
593
+  padding: 0 10px;
594
+  border-bottom: 2px solid #000;
595
+}
596
+
597
+.record_Title div {
598
+  width: 200px;
599
+}
600
+
601
+.print-table {
602
+  width: 100%;
603
+  text-align: center;
604
+  border-collapse: collapse;
605
+  line-height: 40px;
606
+  font-size: 14px;
607
+}
608
+
609
+.print-table thead tr td {
610
+  width: 16%;
611
+}
612
+
613
+.print-table-body tr td {
614
+  height: 25px;
615
+}
616
+
617
+.print-table-no {
618
+  width: 100%;
619
+  text-align: center;
620
+  border-collapse: collapse;
621
+  line-height: 40px;
622
+  font-size: 14px;
623
+}
624
+.print-table-no-1 {
625
+  height: 100%;
626
+  width: 100%;
627
+  text-align: center;
628
+  border-collapse: collapse;
629
+  line-height: 40px;
630
+  font-size: 14px;
631
+}
632
+
633
+.print-table-no-1 tr {
634
+  height: 1px;
635
+}
636
+
637
+.print-table-no-1 .no-1-tr {
638
+  height: 41px;
639
+}
640
+
641
+.print-table-end {
642
+  width: 100%;
643
+  text-align: center;
644
+  border-collapse: collapse;
645
+  line-height: 40px;
646
+  font-size: 14px;
647
+}
648
+
649
+.print-table-end tbody tr td {
650
+  height: 25px;
651
+}
652
+
653
+
654
+</style>

+ 54 - 0
src/xt_pages/outpatientDoctorStation/zujian/checkbox.vue Bestand weergeven

@@ -0,0 +1,54 @@
1
+<template>
2
+    <label class="option_panel">
3
+        <span class="check_box_panel">
4
+            <span class="check_box" :class="{ 'did_checked': checked, }"></span>
5
+        </span>
6
+        <span>{{ text }}</span>
7
+    </label>
8
+</template>
9
+
10
+<script>
11
+export default {
12
+    name: "OptionCheckBox",
13
+    props: {
14
+        text: {
15
+            type: String,
16
+        },
17
+        checked: {
18
+            type: Boolean,
19
+            default: false,
20
+        }
21
+    }
22
+}
23
+</script>
24
+
25
+
26
+<style scoped>
27
+.option_panel {
28
+    margin: 0 5px 0 0;
29
+    /* font-size: 16px; */
30
+}
31
+.option_panel .check_box_panel {
32
+    white-space: nowrap;
33
+    outline: none;
34
+    display: inline-block;
35
+    line-height: 1;
36
+    position: relative;
37
+    vertical-align: middle;
38
+}
39
+.option_panel .check_box_panel .check_box {
40
+    display: inline-block;
41
+    position: relative;
42
+    border: 1px solid #000;
43
+    box-sizing: border-box;
44
+    width: 14px;
45
+    height: 14px;
46
+    background-color: #fff;
47
+}
48
+.check_box_panel .did_checked::after {
49
+    content: "√";
50
+    font-size: 10px;
51
+    margin-left: 2px;
52
+    position: absolute;
53
+}
54
+</style>

+ 73 - 0
src/xt_pages/outpatientDoctorStation/zujian/labelbox.vue Bestand weergeven

@@ -0,0 +1,73 @@
1
+<template >
2
+  <label class="radio-lebel-box">
3
+    <span class="radio-inner">
4
+        <span class="radio-fang " :class="{'is-checked-radio':isChecked}"></span>
5
+        <input  type="radio" class="radio-no" :checked='isChecked' >
6
+    </span>
7
+    <span v-html="showValue"> </span>
8
+  </label>
9
+</template>
10
+
11
+<script>
12
+  export default {
13
+
14
+    name: "labelBox",
15
+    props: {
16
+      isChecked:{
17
+        type:Boolean,
18
+        default:false,
19
+      },
20
+      showValue:{
21
+        type:String,
22
+        default:'',
23
+      },
24
+    },
25
+    data() {
26
+      return {
27
+      }
28
+    },
29
+    methods:{
30
+
31
+    }
32
+  }
33
+</script>
34
+
35
+<style scoped>
36
+.radio-lebel-box {
37
+    font-weight: 400;
38
+    cursor: pointer;
39
+}
40
+.radio-inner {
41
+    white-space: nowrap;
42
+    cursor: pointer;
43
+    outline: none;
44
+    display: inline-block;
45
+    line-height: 1;
46
+    position: relative;
47
+    vertical-align: middle;
48
+}
49
+.radio-fang {
50
+    display: inline-block;
51
+    position: relative;
52
+    border: 1px solid #000;
53
+    box-sizing: border-box;
54
+    width: 14px;
55
+    height: 14px;
56
+    background-color: #fff;
57
+    z-index: 1;
58
+    transition: border-color .25s cubic-bezier(.71,-.46,.29,1.46),background-color .25s cubic-bezier(.71,-.46,.29,1.46);
59
+}
60
+.is-checked-radio::after {
61
+    content: "√";
62
+    font-size: 15px;
63
+}
64
+.radio-no {
65
+    opacity: 0;
66
+    outline: none;
67
+    position: absolute;
68
+    margin: 0;
69
+    width: 0;
70
+    height: 0;
71
+    z-index: -1;
72
+}
73
+</style>

+ 20 - 6
src/xt_pages/outpatientTool/components/detailStatistics.vue Bestand weergeven

@@ -168,6 +168,7 @@
168 168
       <div>总费用:{{ getAllPice() }}</div>
169 169
       <div>
170 170
         个人支付: 
171
+       
171 172
         <span v-if="his_patient.balance_accounts_type == 2">{{ getAllPice() }}</span>  
172 173
         <span v-if="his_patient.balance_accounts_type != 2">{{ getActPay() }}</span>
173 174
       
@@ -330,8 +331,21 @@ export default {
330 331
 
331 332
           var new_arr = [];
332 333
 
333
-          
334
+          let list_1 = this.$store.getters.pagedata.list;
335
+          if (list_1.keywords == undefined) {
336
+            this.keywords = "";
337
+          } else {
338
+            this.keywords = list_1.keywords;
339
+          }
340
+          this.id = list_1.type_id;
341
+          this.item_type = this.id;
342
+          if(this.item_type == undefined){
343
+            this.item_type = "0"
344
+          }else{
345
+            this.item_type = this.id;
346
+          }
334 347
 
348
+          
335 349
           if (this.keywords != "") {
336 350
             for (let i = 0; i < this.tableData.length; i++) {
337 351
               if (this.tableData[i].index != "合计") {
@@ -433,7 +447,7 @@ export default {
433 447
       var act_pay = 0;
434 448
       for (let i = 0; i < this.list.length; i++) {
435 449
         for (let j = 0; j < this.list[i].orders.length; j++) {
436
-          act_pay += this.list[i].orders[j].acct_pay;
450
+          act_pay += this.list[i].orders[j].psn_cash_pay;
437 451
         }
438 452
       }
439 453
       return act_pay.toFixed(2);
@@ -522,13 +536,13 @@ export default {
522 536
   },
523 537
   created() {
524 538
     let list_1 = this.$store.getters.pagedata.list;
525
-          if (list_1.start_time == "") {
526
-            this.chargeDate[0] = "";
539
+          if (!list_1.start_time ||list_1.start_time == "") {
540
+            this.chargeDate[0] = this.chargeDate[0] = moment(new Date()).add("year", 0).format("YYYY-MM-DD");;
527 541
           } else {
528 542
             this.chargeDate[0] = list_1.start_time;
529 543
           }
530
-           if (list_1.end_time == "") {
531
-            this.chargeDate[1] = "";
544
+           if (!list_1.end_time ||list_1.end_time == "") {
545
+            this.chargeDate[1] = this.chargeDate[0] = moment(new Date()).add("year", 0).format("YYYY-MM-DD");;
532 546
           } else {
533 547
             this.chargeDate[1] = list_1.end_time;
534 548
           }

+ 35 - 23
src/xt_pages/outpatientTool/components/gatherStatistics.vue Bestand weergeven

@@ -234,7 +234,7 @@ export default {
234 234
   },
235 235
   methods: {
236 236
     searchAction() {
237
-     let table_id = this.$store.getters.pagedata.list.table_id;
237
+      let table_id = this.$store.getters.pagedata.list.table_id;
238 238
       if (table_id == undefined) {
239 239
         this.$store.commit("SET_PAGEDATA", {
240 240
           table_id: 0,
@@ -256,7 +256,7 @@ export default {
256 256
       }
257 257
       this.tableList = [];
258 258
       this.getGatherDetailList();
259
-      console.log(this.tableList, "查看条约");
259
+      // console.log(this.tableList, "查看条约");
260 260
     },
261 261
     getPrice(val) {
262 262
       var total_price = 0;
@@ -447,19 +447,26 @@ export default {
447 447
             this.keywords = list_1.keywords;
448 448
           }
449 449
           this.id = list_1.type_id;
450
-          this.item_type = this.id
450
+          this.item_type = this.id;
451
+          if(this.item_type == undefined){
452
+            this.item_type = "0"
453
+          }else{
454
+            this.item_type = this.id;
455
+          }
456
+          console.log(this.item_type,'this.item_type')
457
+          
451 458
 
452
-          if(this.keywords!=""){
453
-          for(let i=0;i<this.tableList.length;i++){
454
-          if(this.tableList[i].name.indexOf(this.keywords) >-1){
455
-              new_arr.push(this.tableList[i])
459
+          if (this.keywords != "") {
460
+            for (let i = 0; i < this.tableList.length; i++) {
461
+              if (this.tableList[i].name.indexOf(this.keywords) > -1) {
462
+                new_arr.push(this.tableList[i]);
463
+              }
464
+            }
465
+            var obj = { index: "合计", is_total: 1, total: 0 };
466
+            obj.total = this.getPrice(new_arr);
467
+            this.tableList = [];
468
+            this.tableList = new_arr;
456 469
           }
457
-        }
458
-        var obj ={index:"合计",is_total:1,total:0}
459
-        obj.total = this.getPrice(new_arr)
460
-        this.tableList = []
461
-        this.tableList = new_arr
462
-      }
463 470
           if (this.id == 1) {
464 471
             var new_arr = [];
465 472
             for (let i = 0; i < this.tableList.length; i++) {
@@ -820,7 +827,7 @@ export default {
820 827
           "&id=" +
821 828
           this.id,
822 829
       });
823
-        let table_id = this.$store.getters.pagedata.list.table_id;
830
+      let table_id = this.$store.getters.pagedata.list.table_id;
824 831
       if (table_id == undefined) {
825 832
         this.$store.commit("SET_PAGEDATA", {
826 833
           table_id: 0,
@@ -1247,16 +1254,21 @@ export default {
1247 1254
   },
1248 1255
   created() {
1249 1256
     let list_1 = this.$store.getters.pagedata.list;
1250
-          if (list_1.start_time == "") {
1251
-            this.chargeDate[0] = "";
1252
-          } else {
1253
-            this.chargeDate[0] = list_1.start_time;
1254
-          }
1255
-           if (list_1.end_time == "") {
1256
-            this.chargeDate[1] = "";
1257
-          } else {
1258
-            this.chargeDate[1] = list_1.end_time;
1257
+    if (!list_1.start_time || list_1.start_time == "") {
1258
+      this.chargeDate[0] = moment(new Date())
1259
+        .add("year", 0)
1260
+        .format("YYYY-MM-DD");
1261
+    } else {
1262
+      this.chargeDate[0] = list_1.start_time;
1259 1263
     }
1264
+    if (!list_1.end_time || list_1.end_time == "") {
1265
+      this.chargeDate[1] = moment(new Date())
1266
+        .add("year", 0)
1267
+        .format("YYYY-MM-DD");
1268
+    } else {
1269
+      this.chargeDate[1] = list_1.end_time;
1270
+    }
1271
+
1260 1272
     this.start_time = this.chargeDate[0];
1261 1273
     this.end_time = this.chargeDate[1];
1262 1274
     this.tableList = [];

+ 63 - 17
src/xt_pages/outpatientTool/detailPrint.vue Bestand weergeven

@@ -4,48 +4,94 @@
4 4
       <el-button type="primary" @click="printtpage">打印</el-button>
5 5
     </div>
6 6
     <div id="list-print" class="list-print">
7
-      <div class="listTitle">
7
+      <table class="listTable"
8
+        border="0"
9
+        cellspacing="0"
10
+        style="font-size: 14px"
11
+        align="center">
12
+        <thead style="display: table-header-group; font-weight: bold;border-bottom: 1px solid;">
13
+          <tr
14
+            ><td colspan="4" align="center" style="font-size: 20px"
15
+              >{{ $store.getters.xt_user.org.org_name }}费用清单</td
16
+            ></tr
17
+          >
18
+          <tr>
19
+            <td>患者姓名:{{ patient.name }}</td>
20
+            <td>性别:{{ patient.gender == 1 ? "男" : "女" }}</td>
21
+            <td>结算类别:
22
+          <!-- {{ getType(his_patient.balance_accounts_type) }} -->
23
+          {{getType(his_record_patient.balance_accounts_type)}}</td>
24
+            <td>发票号码:{{order.fa_piao_number}}</td>
25
+          </tr>
26
+          <tr>
27
+            <td>住院/门诊号:
28
+          <!-- {{his_patient.number}} -->
29
+          {{his_record_patient.ipt_otp_no}}</td>
30
+            <td>科室:
31
+          <!-- {{ getDepartment(his_patient.departments) }} -->
32
+          {{ getDepartment(his_record_patient.departments) }}</td>
33
+            <td>就诊流水号:
34
+          <!-- {{ his_patient.number }} -->
35
+          {{his_record_patient.number}}</td>
36
+          </tr>
37
+          <tr>
38
+            <td>总费用:{{ getAllPice() }}</td>
39
+            <td>个人支付:
40
+          <!-- <span v-if="this.$route.query.balance_accounts_type == 2 && his_patient.id >0">{{ getAllPice() }}</span>
41
+          <span v-if="this.$route.query.balance_accounts_type != 2 && his_patient.id >0">{{ getActPay() }}</span> -->
42
+          
43
+          <span v-if="his_record_patient.balance_accounts_type == 2">{{ getAllPice() }}</span>
44
+          <span v-if="his_record_patient.balance_accounts_type != 2">{{ getActPay() }}</span>
45
+            </td>
46
+            <td>基金支付记账:{{ getFundPaySumamt() }}</td>
47
+            <td>补充医疗支付记账:{{ getHifesPay() }}</td>
48
+          </tr>
49
+          <tr>
50
+            <td>
51
+              救助支付金额:{{ getMafPay() }}
52
+            </td>
53
+          </tr>
54
+        </thead>
55
+      </table>
56
+
57
+      <!-- <div class="listTitle">
8 58
         {{ $store.getters.xt_user.org.org_name }}费用清单
9
-      </div>
10
-      <div class="listInfo">
59
+      </div> -->
60
+
61
+      <!-- <div class="listInfo">
11 62
         <div>患者姓名:{{ patient.name }}</div>
12 63
         <div>性别:{{ patient.gender == 1 ? "男" : "女" }}</div>
13 64
         <div>结算类别:
14
-          <!-- {{ getType(his_patient.balance_accounts_type) }} -->
65
+          
15 66
           {{getType(his_record_patient.balance_accounts_type)}}
16 67
         </div>
17 68
         <div style="min-width:300px;">发票号码:{{order.fa_piao_number}}</div>
18
-      </div>
19
-      <div class="listInfo">
69
+      </div> -->
70
+      <!-- <div class="listInfo">
20 71
         <div>住院/门诊号:
21
-          <!-- {{his_patient.number}} -->
22 72
           {{his_record_patient.ipt_otp_no}}
23 73
         </div>
24 74
         <div>科室:
25
-          <!-- {{ getDepartment(his_patient.departments) }} -->
26 75
           {{ getDepartment(his_record_patient.departments) }}
27 76
         </div>
28 77
         <div style="min-width:350px;">就诊流水号:
29
-          <!-- {{ his_patient.number }} -->
78
+       
30 79
           {{his_record_patient.number}}
31 80
         </div>
32
-      </div>
33
-      <div class="listInfo">
81
+      </div> -->
82
+      <!-- <div class="listInfo">
34 83
         <div>总费用:{{ getAllPice() }}</div>
35 84
         <div>个人支付:
36
-          <!-- <span v-if="this.$route.query.balance_accounts_type == 2 && his_patient.id >0">{{ getAllPice() }}</span>
37
-          <span v-if="this.$route.query.balance_accounts_type != 2 && his_patient.id >0">{{ getActPay() }}</span> -->
38
-          
39 85
           <span v-if="his_record_patient.balance_accounts_type == 2">{{ getAllPice() }}</span>
40 86
           <span v-if="his_record_patient.balance_accounts_type != 2">{{ getActPay() }}</span>
41 87
 
42 88
         </div>
43 89
         <div>基金支付记账:{{ getFundPaySumamt() }}</div>
44 90
         <div style="min-width:300px;">补充医疗支付记账:{{ getHifesPay() }}</div>
45
-      </div>
46
-      <div class="listInfo">
91
+      </div> -->
92
+      <!-- <div class="listInfo">
47 93
         <div>救助支付金额:{{ getMafPay() }}</div>
48
-      </div>
94
+      </div> -->
49 95
       <table class="listTable" border="1">
50 96
         <tr style="height:45px">
51 97
           <td width="100" style="text-align: center">序号</td>

+ 703 - 0
src/xt_pages/outpatientTool/export.vue Bestand weergeven

@@ -0,0 +1,703 @@
1
+<template>
2
+  <div class="main-contain new-main-contain">
3
+    <div class="position">
4
+      <bread-crumb :crumbs="crumbs"></bread-crumb>
5
+    </div>
6
+    <div
7
+      class="app-container"
8
+      style="display: flex; flex: 1; padding: 10px 20px 0px 20px"
9
+    >
10
+      <div class="mainLeft">
11
+        <div>
12
+          <div
13
+            style="
14
+              margin: 10px 0;
15
+              display: flex;
16
+              justify-content: space-between;
17
+            "
18
+          >
19
+            <el-input
20
+              size="small"
21
+              style="width: 130px"
22
+              v-model="keywords"
23
+              class="filter-item"
24
+              placeholder="请输入患者名称"
25
+            />
26
+            <el-button
27
+              size="small"
28
+              class="filter-item"
29
+              type="primary"
30
+              @click="searchAction"
31
+              >搜索
32
+            </el-button>
33
+          </div>
34
+
35
+          <el-table
36
+            :row-class-name="tableRowClassName"
37
+            @row-click="onRowClick"
38
+            :data="patientTableData"
39
+            :height="tableHeight"
40
+            border
41
+            style="width: 100%"
42
+            :row-style="{ color: '#303133' }"
43
+            :header-cell-style="{
44
+              backgroundColor: 'rgb(245, 247, 250)',
45
+              color: '#606266',
46
+            }"
47
+            highlight-current-row
48
+            ref="singleTable"
49
+            @current-change="handleCurrentChange"
50
+          >
51
+            <el-table-column align="center" prop="name" label="姓名" wdith="89">
52
+              <template slot-scope="scope">{{ scope.row.name }}</template>
53
+            </el-table-column>
54
+          </el-table>
55
+        </div>
56
+      </div>
57
+      <div class="mainRight">
58
+        <el-date-picker
59
+          v-model="chargeDate"
60
+          type="daterange"
61
+          value-format="yyyy-MM-dd"
62
+          range-separator="至"
63
+          start-placeholder="开始日期"
64
+          @change="changeDate"
65
+          end-placeholder="结束日期"
66
+        >
67
+        </el-date-picker>
68
+         <el-button  size="small" type="primary" @click="exportList" style="width:50px">导出</el-button>
69
+        <el-table
70
+        :data="tableList"
71
+         border
72
+        style="width: 100%">
73
+         <el-table-column prop="date" label="姓名"  width="100" align="center">
74
+           <template slot-scope="scope" >
75
+            {{ scope.row.name }}
76
+           </template>
77
+        </el-table-column>
78
+        <el-table-column  prop="date"  label="身份证"  width="200" align="center">
79
+           <template slot-scope="scope" >
80
+            {{ scope.row.id_card_no }}
81
+           </template> 
82
+        </el-table-column>
83
+        <el-table-column prop="name"  label="医保类型" width="100" align="center">
84
+          <template slot-scope="scope" >
85
+            <span v-if="scope.row.insutype == 0">居民</span>
86
+            <span v-if="scope.row.insutype == 310">职工</span>
87
+            <span v-if="scope.row.insutype == 390">居民</span>
88
+           </template>  
89
+        </el-table-column>
90
+        <el-table-column  prop="address" label="年"  width="50" align="center">
91
+          <template slot-scope="scope" >
92
+            {{getTime(scope.row.settle_accounts_date)}}
93
+         </template>  
94
+        </el-table-column>
95
+         <el-table-column prop="address" label="月"  width="50"  align="center">
96
+          <template slot-scope="scope">
97
+            {{getTimeOne(scope.row.settle_accounts_date)}}
98
+           </template>  
99
+        </el-table-column>
100
+         <el-table-column prop="address" label="收费项目"  width="100" align="center">
101
+           <template slot-scope="scope" >
102
+            <!-- {{getTime(scope.row.settle_accounts_date)}} -->
103
+            <span v-if="scope.row.med_chrgitm_type == '01'">床位费</span>
104
+            <span v-if="scope.row.med_chrgitm_type == '02'">诊察费</span>
105
+            <span v-if="scope.row.med_chrgitm_type == '03'">检查费</span>
106
+            <span v-if="scope.row.med_chrgitm_type == '04'">化验费</span>
107
+            <span v-if="scope.row.med_chrgitm_type == '05'">治疗费</span>
108
+            <span v-if="scope.row.med_chrgitm_type == '06'">手术费</span>
109
+            <span v-if="scope.row.med_chrgitm_type == '08'">材料费</span>
110
+            <span v-if="scope.row.med_chrgitm_type == '09'">西药费</span>
111
+            <span v-if="scope.row.med_chrgitm_type == '11'">中成费</span>
112
+            <span v-if="scope.row.med_chrgitm_type == '14'">其他费</span>
113
+           </template>  
114
+        </el-table-column>
115
+         <el-table-column prop="address" label="数量"  width="100" align="center">
116
+           <template slot-scope="scope" >
117
+            {{getCount(scope.row.child)}}
118
+           </template>  
119
+          </el-table-column>
120
+       
121
+         <el-table-column  prop="address"  label="金额"  width="130" align="center">
122
+         <template slot-scope="scope" >
123
+            {{getAllPrice(scope.row.child)}}
124
+           </template>  
125
+        </el-table-column>
126
+         </el-table>
127
+      </div>
128
+    </div>
129
+  </div>
130
+</template>
131
+
132
+<script>
133
+import { GetDetailPatients,getHisOrderList } from "@/api/his/his_tools";
134
+import BreadCrumb from "@/xt_pages/components/bread-crumb";
135
+const moment = require("moment");
136
+import { uParseTime } from '@/utils/tools'
137
+export default {
138
+  components: {
139
+    BreadCrumb,
140
+  },
141
+  data() {
142
+    return {
143
+      currentRowIndex: 0,
144
+      patientTableData: [],
145
+      tableHeight: 400,
146
+      crumbs: [
147
+        { path: false, name: "His工具" },
148
+        { path: false, name: "明细汇总统计" },
149
+      ],
150
+      titleType: "明细",
151
+      patient_id: 0,
152
+      keywords: "",
153
+      tableList:[],
154
+      tableData:[],
155
+     chargeDate: [
156
+        moment(new Date()).add("year", 0).format("YYYY-MM-DD"),
157
+        moment(new Date()).add("year", 0).format("YYYY-MM-DD"),
158
+      ],
159
+      start_time:"",
160
+      end_time:"",
161
+
162
+    };
163
+  },
164
+
165
+  // beforeRouteEnter(to, from, next){
166
+  //     if(from.path == '/hisTool/detailPrint'){
167
+  //       next((vm) => {
168
+  //         vm.titleType = "明细"
169
+  //       })
170
+  //     }else if(from.path == '/hisTool/gatherPrint'){
171
+  //       vm.titleType = "汇总"
172
+  //       next((vm) => {
173
+  //         vm.titleType = "汇总"
174
+  //       })
175
+  //     }else{
176
+  //       next()
177
+  //     }
178
+  // },
179
+
180
+  //判断列表页是否刷新
181
+  beforeRouteLeave(to, from, next) {
182
+    console.log(to, "beforeRouteEnter");
183
+    if (to.path != "/hisTool/detailPrint"&&to.path != "/hisTool/gatherPrint") {
184
+      this.$store.getters.pagedata.list.table_id = 0
185
+      next()
186
+    } else {
187
+     next()
188
+    }
189
+  },
190
+
191
+  watch:{
192
+    'titleType':{
193
+      handler(val){
194
+        this.$store.commit('SET_PAGENAME',val)
195
+      }
196
+    }
197
+  },
198
+
199
+  methods: {
200
+    getPatientList() {
201
+      var params = {
202
+        keyword: this.keywords,
203
+      };
204
+      GetDetailPatients(params).then((response) => {
205
+        if (response.data.state == 0) {
206
+          this.$message.error(response.data.msg);
207
+          return false;
208
+        } else {
209
+          this.patientTableData = response.data.data.patient;
210
+          this.patient_id = this.patientTableData[0].id;
211
+          if (this.$store.getters.pagedata.list.table_id == 0) {
212
+            this.$refs.singleTable.setCurrentRow(this.patientTableData[0]);
213
+          } else {
214
+            this.$refs.singleTable.setCurrentRow(
215
+              this.patientTableData[
216
+                this.$store.getters.pagedata.list.table_id
217
+              ]
218
+            );
219
+          }
220
+        }
221
+      });
222
+    },
223
+
224
+    tableRowClassName({ row, rowIndex }) {
225
+      row.row_index = rowIndex;
226
+    },
227
+
228
+    onRowClick(row, event, column) {
229
+      this.currentRowIndex = row.row_index;
230
+      this.$store.commit("SET_PAGEDATA", {
231
+        table_id: this.currentRowIndex,
232
+      });
233
+      // console.log(this.$store.getters.pagedata.list.table_id, "列表行id");
234
+    },
235
+    searchAction() {
236
+      this.getPatientList();
237
+    },
238
+    handleCurrentChange(row) {
239
+      this.patient_id = row.id;
240
+      this.tableList = []
241
+      this.tableData = []
242
+      this.getHisOrderList(row.id)
243
+    },
244
+    getHisOrderList(id){
245
+       var params = {
246
+        patient_id:id,
247
+        start_time:this.start_time,
248
+        end_time:this.end_time,
249
+       } 
250
+     console.log("params223332233232",params)
251
+     getHisOrderList(params).then(response=>{
252
+       if(response.data.state == 1){
253
+        //  var list = response.data.data.list
254
+        //  console.log("list23232232323",list)
255
+         var groupList = response.data.data.groupList
256
+          
257
+         var arr = []
258
+         for(let i=0;i<groupList.length;i++){
259
+            //已经结算
260
+           if(groupList[i].order.order_status == 2){
261
+              arr.push(groupList[i])
262
+           }
263
+         }
264
+         console.log("已结算数据",arr)
265
+         if(arr.length > 0){
266
+         let objInfo = {};
267
+          if(arr.length > 0) {
268
+             arr.forEach((item, index) => {
269
+              let { med_chrgitm_type } = item;
270
+              if (!objInfo[med_chrgitm_type]) {
271
+                objInfo[med_chrgitm_type] = {
272
+                  med_chrgitm_type:item.med_chrgitm_type,
273
+                  child: [],
274
+                  count: item.cnt,
275
+                  pric:item.pric,
276
+                  order_id:item.order_id,
277
+                  name:item.patient.name,
278
+                  id_card_no:item.patient.id_card_no,
279
+                  insutype:item.order.insutype,
280
+                  settle_accounts_date:item.order.settle_accounts_date,
281
+                  det_item_fee_sumamt:item.det_item_fee_sumamt,
282
+                };
283
+              }
284
+            });
285
+
286
+            let newArr = Object.values(objInfo);
287
+            console.log("newAR23232323232323323",newArr.length)
288
+
289
+            if(newArr.length > 0){
290
+             console.log("尽力33232233232",newArr)
291
+              for(let i=0;i<newArr.length;i++){
292
+                for(let j=0;j<arr.length;j++){
293
+                   if(newArr[i].med_chrgitm_type == arr[j].med_chrgitm_type){
294
+                      newArr[i].child.push(arr[j])
295
+                   }
296
+                }
297
+              }
298
+            }
299
+            console.log("分类后的数据",newArr)
300
+            this.tableList = newArr
301
+            this.tableData = newArr
302
+          }
303
+          
304
+         }
305
+
306
+         //console.log("grouplist2323322",groupList)
307
+         
308
+       }
309
+     })
310
+    },
311
+    changeDate(){
312
+      this.start_time = this.chargeDate[0];
313
+      this.end_time = this.chargeDate[1];  
314
+      this.tableData = []
315
+      this.tableList = []
316
+      this.getHisOrderList(this.patient_id) 
317
+    },
318
+   getTime(val) {
319
+     if(val < 0){
320
+       return ""
321
+      }
322
+     if(val == ""){
323
+       return ""
324
+      }else {
325
+      return uParseTime(val, '{y}')
326
+      }
327
+    },
328
+   getTimeOne(val) {
329
+     if(val < 0){
330
+       return ""
331
+      }
332
+     if(val == ""){
333
+       return ""
334
+      }else {
335
+      return uParseTime(val, '{m}')
336
+      }
337
+    },
338
+    getCount(val){
339
+      var count = 0
340
+      for(let i=0;i<val.length;i++){
341
+        count +=val[i].cnt
342
+      }
343
+      if(count >0){
344
+        return count
345
+      }else{
346
+        return ""
347
+      }
348
+    },
349
+    getAllPrice(val){
350
+      var total_price = 0
351
+      for(let i=0;i<val.length;i++){
352
+        total_price +=val[i].cnt * val[i].pric
353
+      }
354
+      if(total_price >0){
355
+        return total_price.toFixed(2)
356
+      }else{
357
+        return ""
358
+      }
359
+    },
360
+      exportList(){
361
+         import('@/vendor/Export2Excel').then(excel => {
362
+          console.log("tabledat3323232322323wode",this.tableData)
363
+          for(let i=0;i<this.tableData.length;i++){
364
+             if(this.tableData[i].insutype == 310){
365
+              this.tableData[i].insutype = "职工"
366
+             }
367
+             if(this.tableData[i].insutype == 390){
368
+              this.tableData[i].insutype = "居民"
369
+             }
370
+             
371
+             this.tableData[i].year = this.getTime(this.tableData[i].settle_accounts_date)
372
+             this.tableData[i].month = this.getTimeOne(this.tableData[i].settle_accounts_date)
373
+              
374
+             if(this.tableData[i].med_chrgitm_type == "01"){
375
+               this.tableData[i].med_chrgitm_type = "床位费"
376
+             }
377
+             if(this.tableData[i].med_chrgitm_type == "02"){
378
+               this.tableData[i].med_chrgitm_type = "诊察费"
379
+             }
380
+             if(this.tableData[i].med_chrgitm_type == "03"){
381
+               this.tableData[i].med_chrgitm_type = "检查费"
382
+             }
383
+             if(this.tableData[i].med_chrgitm_type == "04"){
384
+               this.tableData[i].med_chrgitm_type = "化验费"
385
+             }
386
+             if(this.tableData[i].med_chrgitm_type == "05"){
387
+               this.tableData[i].med_chrgitm_type = "治疗费"
388
+             }
389
+             if(this.tableData[i].med_chrgitm_type == "06"){
390
+               this.tableData[i].med_chrgitm_type = "治疗费"
391
+             }
392
+             if(this.tableData[i].med_chrgitm_type == "08"){
393
+               this.tableData[i].med_chrgitm_type = "材料费"
394
+             }
395
+             if(this.tableData[i].med_chrgitm_type == "09"){
396
+               this.tableData[i].med_chrgitm_type = "西药费"
397
+             }
398
+             if(this.tableData[i].med_chrgitm_type == "11"){
399
+               this.tableData[i].med_chrgitm_type = "中成费"
400
+             }
401
+             if(this.tableData[i].med_chrgitm_type == "14"){
402
+               this.tableData[i].med_chrgitm_type = "其他费"
403
+             }
404
+             
405
+             this.tableData[i].sum_count = this.getCount(this.tableData[i].child)
406
+
407
+             this.tableData[i].find_price = this.getAllPrice(this.tableData[i].child)
408
+          }
409
+         const tHeader = ['姓名','身份证','医保类型','年','月','收费项目','数量','金额']
410
+         const filterVal = ['name', 'id_card_no','insutype','year','month','med_chrgitm_type','sum_count','find_price']
411
+
412
+         const data = this.formatJson(filterVal,this.tableData)
413
+
414
+         excel.export_json_to_excel({
415
+           header: tHeader,
416
+           data,
417
+           filename: '药品信息'
418
+         })
419
+          this.downloadLoading = false
420
+
421
+        })
422
+       },
423
+       formatJson(filterVal, jsonData) {
424
+        return jsonData.map(v => filterVal.map(j => v[j]))
425
+       },
426
+  },
427
+  created() {
428
+
429
+    let type = this.$store.getters.pagedata.pagestate
430
+    if(type == ""){
431
+      this.titleType = "明细"
432
+    }else{
433
+      this.titleType = type
434
+    }
435
+    const tableHeight = document.body.clientHeight - 290;
436
+    this.tableHeight = tableHeight;
437
+    this.start_time = moment(new Date()).add("year", 0).format("YYYY-MM-DD")
438
+    this.end_time = moment(new Date()).add("year", 0).format("YYYY-MM-DD")
439
+    this.getPatientList();
440
+    
441
+  },
442
+
443
+  mounted() {}
444
+};
445
+</script>
446
+
447
+<style lang="scss" scoped>
448
+.new-main-contain {
449
+  height: 100%;
450
+  display: flex;
451
+  flex-direction: column;
452
+}
453
+
454
+.app-container {
455
+  height: 100%;
456
+}
457
+
458
+.mainCell {
459
+  height: 36px;
460
+  display: flex;
461
+  align-items: center;
462
+}
463
+
464
+.mainLeft {
465
+  width: 200px;
466
+  height: 100%;
467
+  display: flex;
468
+  flex-direction: column;
469
+
470
+  .el-radio {
471
+    margin-right: 5px;
472
+  }
473
+}
474
+.mainRight {
475
+  margin-left: 10px;
476
+  flex: 1;
477
+  height: 100%;
478
+  display: flex;
479
+  flex-direction: column;
480
+  overflow-y: auto;
481
+
482
+  .cellSpan {
483
+    min-width: 80px;
484
+    display: inline-block;
485
+    margin-right: 10px;
486
+  }
487
+}
488
+.mainCenter {
489
+  display: flex;
490
+  flex: 1;
491
+}
492
+
493
+.centerLeft {
494
+  flex: 1;
495
+  display: flex;
496
+  flex-direction: column;
497
+  position: relative;
498
+
499
+  .el-form-item {
500
+    width: 32%;
501
+    margin-right: 1%;
502
+    float: left;
503
+  }
504
+
505
+  .el-form-item__label {
506
+    text-align: left;
507
+  }
508
+}
509
+.backColor {
510
+  background: #f6f8f9;
511
+  height: 5px;
512
+  margin-bottom: 5px;
513
+}
514
+
515
+.tabsBox {
516
+  position: relative;
517
+  height: 76%;
518
+  overflow-y: auto;
519
+  margin-bottom: 60px;
520
+
521
+  .el-tabs__item {
522
+    padding: 0 10px;
523
+  }
524
+}
525
+.preTabs {
526
+  height: 100%;
527
+  display: flex;
528
+  flex-direction: column;
529
+
530
+  .el-tabs__content {
531
+    flex: 1;
532
+    overflow-y: auto;
533
+  }
534
+}
535
+
536
+.costBox {
537
+  width: 100%;
538
+  height: 60px;
539
+  background: #fff;
540
+  position: absolute;
541
+  bottom: 0;
542
+  display: flex;
543
+  align-items: center;
544
+}
545
+
546
+.addTab {
547
+  position: absolute;
548
+  right: 0;
549
+  top: 14px;
550
+  z-index: 20;
551
+}
552
+
553
+.centerRight {
554
+  width: 300px;
555
+  margin-left: 10px;
556
+  display: flex;
557
+  flex-direction: column;
558
+  position: relative;
559
+}
560
+
561
+.rightTab {
562
+  height: 40px;
563
+  width: 100%;
564
+  border: 1px solid #d2d2d2;
565
+  box-sizing: border-box;
566
+
567
+  p {
568
+    width: 50%;
569
+    height: 40px;
570
+    line-height: 40px;
571
+    text-align: center;
572
+    background: #eee;
573
+    float: left;
574
+  }
575
+
576
+  > p:last-child {
577
+    border-left: 1px solid #d2d2d2;
578
+    float: right;
579
+  }
580
+
581
+  .activeP {
582
+    background: #409eff;
583
+    color: #fff;
584
+  }
585
+}
586
+.comfirmBox {
587
+  width: 100%;
588
+  height: 60px;
589
+  background: #fff;
590
+  position: absolute;
591
+  bottom: 0;
592
+  display: flex;
593
+  align-items: center;
594
+  justify-content: space-between;
595
+}
596
+
597
+.mainHeader {
598
+  width: 100%;
599
+  background: #fff;
600
+  position: fixed;
601
+  z-index: 100;
602
+  height: 36px;
603
+}
604
+
605
+.titleBox {
606
+  position: fixed;
607
+  z-index: 99;
608
+  background: #fff;
609
+}
610
+
611
+.fixedCell {
612
+  position: fixed;
613
+  z-index: 99;
614
+  right: 30px;
615
+  background: #fff;
616
+  width: 300px;
617
+  display: flex;
618
+  justify-content: space-between;
619
+}
620
+</style>
621
+
622
+<style lang="scss">
623
+.centerLeft {
624
+  .el-form-item__label {
625
+    text-align: left;
626
+  }
627
+}
628
+.tabsBox {
629
+  .el-tabs__item {
630
+    padding: 0 10px;
631
+  }
632
+
633
+  .el-tabs--bottom
634
+    .el-tabs--left
635
+    > .el-tabs__header
636
+    .el-tabs__item:nth-child(2),
637
+  .el-tabs--bottom
638
+    .el-tabs--right
639
+    > .el-tabs__header
640
+    .el-tabs__item:nth-child(2),
641
+  .el-tabs--bottom.el-tabs--border-card
642
+    > .el-tabs__header
643
+    .el-tabs__item:nth-child(2),
644
+  .el-tabs--bottom.el-tabs--card > .el-tabs__header .el-tabs__item:nth-child(2),
645
+  .el-tabs--top .el-tabs--left > .el-tabs__header .el-tabs__item:nth-child(2),
646
+  .el-tabs--top .el-tabs--right > .el-tabs__header .el-tabs__item:nth-child(2),
647
+  .el-tabs--top.el-tabs--border-card
648
+    > .el-tabs__header
649
+    .el-tabs__item:nth-child(2),
650
+  .el-tabs--top.el-tabs--card > .el-tabs__header .el-tabs__item:nth-child(2) {
651
+    padding: 0 10px;
652
+  }
653
+
654
+  .el-tabs--bottom .el-tabs--left > .el-tabs__header .el-tabs__item:last-child,
655
+  .el-tabs--bottom .el-tabs--right > .el-tabs__header .el-tabs__item:last-child,
656
+  .el-tabs--bottom.el-tabs--border-card
657
+    > .el-tabs__header
658
+    .el-tabs__item:last-child,
659
+  .el-tabs--bottom.el-tabs--card > .el-tabs__header .el-tabs__item:last-child,
660
+  .el-tabs--top .el-tabs--left > .el-tabs__header .el-tabs__item:last-child,
661
+  .el-tabs--top .el-tabs--right > .el-tabs__header .el-tabs__item:last-child,
662
+  .el-tabs--top.el-tabs--border-card
663
+    > .el-tabs__header
664
+    .el-tabs__item:last-child,
665
+  .el-tabs--top.el-tabs--card > .el-tabs__header .el-tabs__item:last-child {
666
+    padding: 0 10px;
667
+  }
668
+
669
+  .el-tabs--card > .el-tabs__header .el-tabs__item.is-active.is-closable {
670
+    padding: 0 10px;
671
+  }
672
+}
673
+.centerRight {
674
+  .el-tabs__nav-scroll {
675
+    display: flex;
676
+  }
677
+
678
+  .el-tabs__nav {
679
+    margin: 0 auto;
680
+  }
681
+
682
+  .el-table th .cell,
683
+  .el-table td .cell {
684
+    padding: 0 2px;
685
+  }
686
+}
687
+.preTabs {
688
+  .el-tabs__content {
689
+  }
690
+}
691
+.rightTabs {
692
+  height: 100%;
693
+
694
+  .el-tabs__content {
695
+  }
696
+}
697
+.centerDialog {
698
+  .el-dialog__body {
699
+    max-height: calc(100vh - 100px) !important;
700
+    padding: 0 20px;
701
+  }
702
+}
703
+</style>

+ 713 - 0
src/xt_pages/outpatientTool/exportOne.vue Bestand weergeven

@@ -0,0 +1,713 @@
1
+<template>
2
+  <div class="main-contain new-main-contain">
3
+    <div class="position">
4
+      <bread-crumb :crumbs="crumbs"></bread-crumb>
5
+    </div>
6
+    <div
7
+      class="app-container"
8
+      style="display: flex; flex: 1; padding: 10px 20px 0px 20px"
9
+    >
10
+      <div class="mainLeft">
11
+        <div>
12
+          <div
13
+            style="
14
+              margin: 10px 0;
15
+              display: flex;
16
+              justify-content: space-between;
17
+            "
18
+          >
19
+            <el-input
20
+              size="small"
21
+              style="width: 130px"
22
+              v-model="keywords"
23
+              class="filter-item"
24
+              placeholder="请输入患者名称"
25
+            />
26
+            <el-button
27
+              size="small"
28
+              class="filter-item"
29
+              type="primary"
30
+              @click="searchAction"
31
+              >搜索
32
+            </el-button>
33
+          </div>
34
+
35
+          <el-table
36
+            :row-class-name="tableRowClassName"
37
+            @row-click="onRowClick"
38
+            :data="patientTableData"
39
+            :height="tableHeight"
40
+            border
41
+            style="width: 100%"
42
+            :row-style="{ color: '#303133' }"
43
+            :header-cell-style="{
44
+              backgroundColor: 'rgb(245, 247, 250)',
45
+              color: '#606266',
46
+            }"
47
+            highlight-current-row
48
+            ref="singleTable"
49
+            @current-change="handleCurrentChange"
50
+          >
51
+            <el-table-column align="center" prop="name" label="姓名" wdith="89">
52
+              <template slot-scope="scope">{{ scope.row.name }}</template>
53
+            </el-table-column>
54
+          </el-table>
55
+        </div>
56
+      </div>
57
+      <div class="mainRight">
58
+        <el-date-picker
59
+          v-model="chargeDate"
60
+          type="daterange"
61
+          value-format="yyyy-MM-dd"
62
+          range-separator="至"
63
+          start-placeholder="开始日期"
64
+          @change="changeDate"
65
+          end-placeholder="结束日期"
66
+        >
67
+        </el-date-picker>
68
+         <el-button  size="small" type="primary" @click="exportList" style="width:50px">导出</el-button>
69
+        <el-table
70
+        :data="tableList"
71
+         border
72
+        style="width: 100%">
73
+         <el-table-column prop="date" label="姓名"  width="100" align="center">
74
+           <template slot-scope="scope" >
75
+            {{ scope.row.patient.name }}
76
+           </template>
77
+        </el-table-column>
78
+        <el-table-column  prop="date"  label="身份证"  width="200" align="center">
79
+           <template slot-scope="scope" >
80
+            {{ scope.row.patient.id_card_no }}
81
+           </template> 
82
+        </el-table-column>
83
+        <el-table-column prop="name"  label="医保类型" width="100" align="center">
84
+          <template slot-scope="scope" >
85
+            <span v-if="scope.row.order.insutype == 0">居民</span>
86
+            <span v-if="scope.row.order.insutype == 310">职工</span>
87
+            <span v-if="scope.row.order.insutype == 390">居民</span>
88
+           </template>  
89
+        </el-table-column>
90
+        <el-table-column  prop="address" label="年"  width="50" align="center">
91
+          <template slot-scope="scope" >
92
+            {{getTime(scope.row.order.settle_accounts_date)}}
93
+         </template>  
94
+        </el-table-column>
95
+         <el-table-column prop="address" label="月"  width="50"  align="center">
96
+          <template slot-scope="scope">
97
+            {{getTimeOne(scope.row.order.settle_accounts_date)}}
98
+           </template>  
99
+        </el-table-column>
100
+         <el-table-column prop="address" label="药品编码"  width="100" align="center">
101
+           <template slot-scope="scope" >
102
+             <span v-if="scope.row.his_doctor_advice.id > 0">
103
+               {{scope.row.his_doctor_advice.id}}
104
+             </span>
105
+             <span v-if="scope.row.his_prescription_project.id > 0">
106
+               {{scope.row.his_prescription_project.id}}
107
+             </span>
108
+           </template>  
109
+        </el-table-column>
110
+         <el-table-column prop="address" label="名称"  width="100" align="center">
111
+           <template slot-scope="scope" >
112
+             <span v-if="scope.row.his_doctor_advice.id > 0">
113
+               {{scope.row.his_doctor_advice.advice_name}}
114
+             </span>
115
+             <span v-if="scope.row.his_prescription_project.id > 0">
116
+               {{scope.row.his_prescription_project.good_info.good_name}}
117
+             </span>
118
+           </template>  
119
+          </el-table-column>
120
+       
121
+         <el-table-column  prop="address"  label="单位"  width="130" align="center">
122
+         <template slot-scope="scope" >
123
+          
124
+             <span v-if="scope.row.his_doctor_advice.id > 0">
125
+               {{scope.row.his_doctor_advice.prescribing_number_unit}}
126
+             </span>
127
+             <span v-if="scope.row.his_prescription_project.id > 0">
128
+               {{scope.row.his_prescription_project.unit}}
129
+             </span>
130
+           </template>  
131
+        </el-table-column>
132
+        <el-table-column  prop="address"  label="数量"  width="130" align="center">
133
+         <template slot-scope="scope" >
134
+               {{scope.row.cnt}}
135
+           </template>  
136
+        </el-table-column>
137
+       <el-table-column  prop="address"  label="金额"  width="130" align="center">
138
+         <template slot-scope="scope" >   
139
+               {{(scope.row.cnt * scope.row.pric).toFixed(2)}}
140
+           </template>  
141
+        </el-table-column>
142
+         </el-table>
143
+      </div>
144
+    </div>
145
+  </div>
146
+</template>
147
+
148
+<script>
149
+import { GetDetailPatients,getHisAdviceOrderList } from "@/api/his/his_tools";
150
+import BreadCrumb from "@/xt_pages/components/bread-crumb";
151
+const moment = require("moment");
152
+import { uParseTime } from '@/utils/tools'
153
+export default {
154
+  components: {
155
+    BreadCrumb,
156
+  },
157
+  data() {
158
+    return {
159
+      currentRowIndex: 0,
160
+      patientTableData: [],
161
+      tableHeight: 400,
162
+      crumbs: [
163
+        { path: false, name: "His工具" },
164
+        { path: false, name: "明细汇总统计" },
165
+      ],
166
+      titleType: "明细",
167
+      patient_id: 0,
168
+      keywords: "",
169
+      tableList:[],
170
+      tableData:[],
171
+      chargeDate: [
172
+        moment(new Date()).add("year", 0).format("YYYY-MM-DD"),
173
+        moment(new Date()).add("year", 0).format("YYYY-MM-DD"),
174
+      ],
175
+      start_time:"",
176
+      end_time:"",
177
+      drugList:[],
178
+      goodList:[],
179
+    };
180
+  },
181
+
182
+  // beforeRouteEnter(to, from, next){
183
+  //     if(from.path == '/hisTool/detailPrint'){
184
+  //       next((vm) => {
185
+  //         vm.titleType = "明细"
186
+  //       })
187
+  //     }else if(from.path == '/hisTool/gatherPrint'){
188
+  //       vm.titleType = "汇总"
189
+  //       next((vm) => {
190
+  //         vm.titleType = "汇总"
191
+  //       })
192
+  //     }else{
193
+  //       next()
194
+  //     }
195
+  // },
196
+
197
+  //判断列表页是否刷新
198
+  beforeRouteLeave(to, from, next) {
199
+    console.log(to, "beforeRouteEnter");
200
+    if (to.path != "/hisTool/detailPrint"&&to.path != "/hisTool/gatherPrint") {
201
+      this.$store.getters.pagedata.list.table_id = 0
202
+      next()
203
+    } else {
204
+     next()
205
+    }
206
+  },
207
+
208
+  watch:{
209
+    'titleType':{
210
+      handler(val){
211
+        this.$store.commit('SET_PAGENAME',val)
212
+      }
213
+    }
214
+  },
215
+
216
+  methods: {
217
+    getPatientList() {
218
+      var params = {
219
+        keyword: this.keywords,
220
+      };
221
+      GetDetailPatients(params).then((response) => {
222
+        if (response.data.state == 0) {
223
+          this.$message.error(response.data.msg);
224
+          return false;
225
+        } else {
226
+          this.patientTableData = response.data.data.patient;
227
+          this.patient_id = this.patientTableData[0].id;
228
+          if (this.$store.getters.pagedata.list.table_id == 0) {
229
+            this.$refs.singleTable.setCurrentRow(this.patientTableData[0]);
230
+          } else {
231
+            this.$refs.singleTable.setCurrentRow(
232
+              this.patientTableData[
233
+                this.$store.getters.pagedata.list.table_id
234
+              ]
235
+            );
236
+          }
237
+        }
238
+      });
239
+    },
240
+
241
+    tableRowClassName({ row, rowIndex }) {
242
+      row.row_index = rowIndex;
243
+    },
244
+
245
+    onRowClick(row, event, column) {
246
+      this.currentRowIndex = row.row_index;
247
+      this.$store.commit("SET_PAGEDATA", {
248
+        table_id: this.currentRowIndex,
249
+      });
250
+      // console.log(this.$store.getters.pagedata.list.table_id, "列表行id");
251
+    },
252
+    searchAction() {
253
+      this.getPatientList();
254
+    },
255
+    handleCurrentChange(row) {
256
+      this.patient_id = row.id;
257
+      this.tableList = []
258
+      this.tableData = []
259
+      this.getHisAdviceOrderList(row.id)
260
+    },
261
+    getHisAdviceOrderList(id){
262
+       var params = {
263
+        patient_id:id,
264
+        start_time:this.start_time,
265
+        end_time:this.end_time,
266
+       } 
267
+     getHisAdviceOrderList(params).then(response=>{
268
+        if(response.data.state == 1){
269
+          var arr= []
270
+           var list =  response.data.data.list
271
+           console.log("list2323322323我的",list)
272
+           for(let i=0;i<list.length;i++){
273
+             if(list[i].order.order_status  == 2){
274
+               arr.push(list[i])
275
+             }
276
+           }
277
+           this.tableList = arr
278
+           this.tableData = arr
279
+         
280
+        }
281
+     })
282
+    },
283
+    changeDate(){
284
+      this.start_time = this.chargeDate[0];
285
+      this.end_time = this.chargeDate[1];  
286
+      this.tableData = []
287
+      this.tableList = []
288
+      this.getHisAdviceOrderList(this.patient_id) 
289
+    },
290
+   getTime(val) {
291
+     if(val < 0){
292
+       return ""
293
+      }
294
+     if(val == ""){
295
+       return ""
296
+      }else {
297
+      return uParseTime(val, '{y}')
298
+      }
299
+    },
300
+   getTimeOne(val) {
301
+     if(val < 0){
302
+       return ""
303
+      }
304
+     if(val == ""){
305
+       return ""
306
+      }else {
307
+      return uParseTime(val, '{m}')
308
+      }
309
+    },
310
+    getCount(val){
311
+      var count = 0
312
+      for(let i=0;i<val.length;i++){
313
+        count +=val[i].cnt
314
+      }
315
+      if(count >0){
316
+        return count
317
+      }else{
318
+        return ""
319
+      }
320
+    },
321
+    getAllPrice(val){
322
+      var total_price = 0
323
+      for(let i=0;i<val.length;i++){
324
+        total_price +=val[i].cnt * val[i].pric
325
+      }
326
+      if(total_price >0){
327
+        return total_price.toFixed(2)
328
+      }else{
329
+        return ""
330
+      }
331
+    },
332
+    exportList(){
333
+      import('@/vendor/Export2Excel').then(excel => {
334
+      for(let i=0;i<this.tableData.length;i++){
335
+          if(this.tableData[i].insutype == 310){
336
+          this.tableData[i].insutype = "职工"
337
+          }
338
+          if(this.tableData[i].insutype == 390){
339
+          this.tableData[i].insutype = "居民"
340
+          }
341
+          
342
+          this.tableData[i].year = this.getTime(this.tableData[i].settle_accounts_date)
343
+          this.tableData[i].month = this.getTimeOne(this.tableData[i].settle_accounts_date)
344
+          
345
+          if(this.tableData[i].med_chrgitm_type == "01"){
346
+            this.tableData[i].med_chrgitm_type = "床位费"
347
+          }
348
+          if(this.tableData[i].med_chrgitm_type == "02"){
349
+            this.tableData[i].med_chrgitm_type = "诊察费"
350
+          }
351
+          if(this.tableData[i].med_chrgitm_type == "03"){
352
+            this.tableData[i].med_chrgitm_type = "检查费"
353
+          }
354
+          if(this.tableData[i].med_chrgitm_type == "04"){
355
+            this.tableData[i].med_chrgitm_type = "化验费"
356
+          }
357
+          if(this.tableData[i].med_chrgitm_type == "05"){
358
+            this.tableData[i].med_chrgitm_type = "治疗费"
359
+          }
360
+          if(this.tableData[i].med_chrgitm_type == "06"){
361
+            this.tableData[i].med_chrgitm_type = "治疗费"
362
+          }
363
+          if(this.tableData[i].med_chrgitm_type == "08"){
364
+            this.tableData[i].med_chrgitm_type = "材料费"
365
+          }
366
+          if(this.tableData[i].med_chrgitm_type == "09"){
367
+            this.tableData[i].med_chrgitm_type = "西药费"
368
+          }
369
+          if(this.tableData[i].med_chrgitm_type == "11"){
370
+            this.tableData[i].med_chrgitm_type = "中成费"
371
+          }
372
+          if(this.tableData[i].med_chrgitm_type == "14"){
373
+            this.tableData[i].med_chrgitm_type = "其他费"
374
+          }
375
+
376
+        this.tableData[i].name = this.tableData[i].patient.name
377
+        this.tableData[i].id_card_no = this.tableData[i].patient.id_card_no 
378
+        this.tableData[i].total_price = (this.tableData[i].cnt * this.tableData[i].pric).toFixed(2)
379
+        if(this.tableData[i].his_doctor_advice.id > 0){
380
+          this.tableData[i].his_advice_name = this.tableData[i].his_doctor_advice.advice_name
381
+          this.tableData[i].his_prescribing_number_unit = this.tableData[i].his_doctor_advice.prescribing_number_unit
382
+        }
383
+        if(this.tableData[i].his_prescription_project.id > 0){
384
+          this.tableData[i].his_advice_name = this.tableData[i].his_prescription_project.good_info.good_name
385
+          this.tableData[i].his_prescribing_number_unit = this.tableData[i].his_prescription_project.unit
386
+        }
387
+        if(this.tableData[i].order.insutype == 0){
388
+           this.tableData[i].insutype = "居民"
389
+        }
390
+        if(this.tableData[i].order.insutype == 310){
391
+          this.tableData[i].insutype = "职工"
392
+        }
393
+        if(this.tableData[i].order.insutype == 390){
394
+          this.tableData[i].insutype = "居民"
395
+        }
396
+        
397
+        this.tableData[i].year = this.getTime(this.tableData[i].order.settle_accounts_date)
398
+        this.tableData[i].month = this.getTimeOne(this.tableData[i].order.settle_accounts_date)
399
+      }
400
+      const tHeader = ['姓名','身份证','医保类型','年','月','名称','单位','数量','金额']
401
+      const filterVal = ['name', 'id_card_no','insutype','year','month','his_advice_name','his_prescribing_number_unit','cnt','total_price']
402
+
403
+      const data = this.formatJson(filterVal,this.tableData)
404
+
405
+      excel.export_json_to_excel({
406
+        header: tHeader,
407
+        data,
408
+        filename: '药品信息'
409
+      })
410
+      this.downloadLoading = false
411
+
412
+    })
413
+   },
414
+   formatJson(filterVal, jsonData) {
415
+     return jsonData.map(v => filterVal.map(j => v[j]))
416
+    },
417
+    getDrugNumber(drug_id){
418
+      
419
+      var id = ""
420
+      for(let i=0;i<this.drugList.length;i++){
421
+        if(this.drugList[i].id == drug_id){
422
+          id = this.drugList[i].id
423
+        }
424
+      }
425
+      return id
426
+    },
427
+    getGoodNumber(good_id){
428
+      var good_name = ""
429
+      for(let i=0;i<this.goodList.length;i++){
430
+        if(this.goodList[i].id == good_id){
431
+           good_name = this.goodList[i].good_name
432
+        }
433
+      }
434
+      return good_name
435
+    }
436
+  },
437
+  created() {
438
+
439
+    let type = this.$store.getters.pagedata.pagestate
440
+    if(type == ""){
441
+      this.titleType = "明细"
442
+    }else{
443
+      this.titleType = type
444
+    }
445
+    const tableHeight = document.body.clientHeight - 290;
446
+    this.tableHeight = tableHeight;
447
+    this.start_time = moment(new Date()).add("year", 0).format("YYYY-MM-DD")
448
+    this.end_time = moment(new Date()).add("year", 0).format("YYYY-MM-DD")
449
+    this.getPatientList();
450
+    
451
+  },
452
+
453
+  mounted() {}
454
+};
455
+</script>
456
+
457
+<style lang="scss" scoped>
458
+.new-main-contain {
459
+  height: 100%;
460
+  display: flex;
461
+  flex-direction: column;
462
+}
463
+
464
+.app-container {
465
+  height: 100%;
466
+}
467
+
468
+.mainCell {
469
+  height: 36px;
470
+  display: flex;
471
+  align-items: center;
472
+}
473
+
474
+.mainLeft {
475
+  width: 200px;
476
+  height: 100%;
477
+  display: flex;
478
+  flex-direction: column;
479
+
480
+  .el-radio {
481
+    margin-right: 5px;
482
+  }
483
+}
484
+.mainRight {
485
+  margin-left: 10px;
486
+  flex: 1;
487
+  height: 100%;
488
+  display: flex;
489
+  flex-direction: column;
490
+  overflow-y: auto;
491
+
492
+  .cellSpan {
493
+    min-width: 80px;
494
+    display: inline-block;
495
+    margin-right: 10px;
496
+  }
497
+}
498
+.mainCenter {
499
+  display: flex;
500
+  flex: 1;
501
+}
502
+
503
+.centerLeft {
504
+  flex: 1;
505
+  display: flex;
506
+  flex-direction: column;
507
+  position: relative;
508
+
509
+  .el-form-item {
510
+    width: 32%;
511
+    margin-right: 1%;
512
+    float: left;
513
+  }
514
+
515
+  .el-form-item__label {
516
+    text-align: left;
517
+  }
518
+}
519
+.backColor {
520
+  background: #f6f8f9;
521
+  height: 5px;
522
+  margin-bottom: 5px;
523
+}
524
+
525
+.tabsBox {
526
+  position: relative;
527
+  height: 76%;
528
+  overflow-y: auto;
529
+  margin-bottom: 60px;
530
+
531
+  .el-tabs__item {
532
+    padding: 0 10px;
533
+  }
534
+}
535
+.preTabs {
536
+  height: 100%;
537
+  display: flex;
538
+  flex-direction: column;
539
+
540
+  .el-tabs__content {
541
+    flex: 1;
542
+    overflow-y: auto;
543
+  }
544
+}
545
+
546
+.costBox {
547
+  width: 100%;
548
+  height: 60px;
549
+  background: #fff;
550
+  position: absolute;
551
+  bottom: 0;
552
+  display: flex;
553
+  align-items: center;
554
+}
555
+
556
+.addTab {
557
+  position: absolute;
558
+  right: 0;
559
+  top: 14px;
560
+  z-index: 20;
561
+}
562
+
563
+.centerRight {
564
+  width: 300px;
565
+  margin-left: 10px;
566
+  display: flex;
567
+  flex-direction: column;
568
+  position: relative;
569
+}
570
+
571
+.rightTab {
572
+  height: 40px;
573
+  width: 100%;
574
+  border: 1px solid #d2d2d2;
575
+  box-sizing: border-box;
576
+
577
+  p {
578
+    width: 50%;
579
+    height: 40px;
580
+    line-height: 40px;
581
+    text-align: center;
582
+    background: #eee;
583
+    float: left;
584
+  }
585
+
586
+  > p:last-child {
587
+    border-left: 1px solid #d2d2d2;
588
+    float: right;
589
+  }
590
+
591
+  .activeP {
592
+    background: #409eff;
593
+    color: #fff;
594
+  }
595
+}
596
+.comfirmBox {
597
+  width: 100%;
598
+  height: 60px;
599
+  background: #fff;
600
+  position: absolute;
601
+  bottom: 0;
602
+  display: flex;
603
+  align-items: center;
604
+  justify-content: space-between;
605
+}
606
+
607
+.mainHeader {
608
+  width: 100%;
609
+  background: #fff;
610
+  position: fixed;
611
+  z-index: 100;
612
+  height: 36px;
613
+}
614
+
615
+.titleBox {
616
+  position: fixed;
617
+  z-index: 99;
618
+  background: #fff;
619
+}
620
+
621
+.fixedCell {
622
+  position: fixed;
623
+  z-index: 99;
624
+  right: 30px;
625
+  background: #fff;
626
+  width: 300px;
627
+  display: flex;
628
+  justify-content: space-between;
629
+}
630
+</style>
631
+
632
+<style lang="scss">
633
+.centerLeft {
634
+  .el-form-item__label {
635
+    text-align: left;
636
+  }
637
+}
638
+.tabsBox {
639
+  .el-tabs__item {
640
+    padding: 0 10px;
641
+  }
642
+
643
+  .el-tabs--bottom
644
+    .el-tabs--left
645
+    > .el-tabs__header
646
+    .el-tabs__item:nth-child(2),
647
+  .el-tabs--bottom
648
+    .el-tabs--right
649
+    > .el-tabs__header
650
+    .el-tabs__item:nth-child(2),
651
+  .el-tabs--bottom.el-tabs--border-card
652
+    > .el-tabs__header
653
+    .el-tabs__item:nth-child(2),
654
+  .el-tabs--bottom.el-tabs--card > .el-tabs__header .el-tabs__item:nth-child(2),
655
+  .el-tabs--top .el-tabs--left > .el-tabs__header .el-tabs__item:nth-child(2),
656
+  .el-tabs--top .el-tabs--right > .el-tabs__header .el-tabs__item:nth-child(2),
657
+  .el-tabs--top.el-tabs--border-card
658
+    > .el-tabs__header
659
+    .el-tabs__item:nth-child(2),
660
+  .el-tabs--top.el-tabs--card > .el-tabs__header .el-tabs__item:nth-child(2) {
661
+    padding: 0 10px;
662
+  }
663
+
664
+  .el-tabs--bottom .el-tabs--left > .el-tabs__header .el-tabs__item:last-child,
665
+  .el-tabs--bottom .el-tabs--right > .el-tabs__header .el-tabs__item:last-child,
666
+  .el-tabs--bottom.el-tabs--border-card
667
+    > .el-tabs__header
668
+    .el-tabs__item:last-child,
669
+  .el-tabs--bottom.el-tabs--card > .el-tabs__header .el-tabs__item:last-child,
670
+  .el-tabs--top .el-tabs--left > .el-tabs__header .el-tabs__item:last-child,
671
+  .el-tabs--top .el-tabs--right > .el-tabs__header .el-tabs__item:last-child,
672
+  .el-tabs--top.el-tabs--border-card
673
+    > .el-tabs__header
674
+    .el-tabs__item:last-child,
675
+  .el-tabs--top.el-tabs--card > .el-tabs__header .el-tabs__item:last-child {
676
+    padding: 0 10px;
677
+  }
678
+
679
+  .el-tabs--card > .el-tabs__header .el-tabs__item.is-active.is-closable {
680
+    padding: 0 10px;
681
+  }
682
+}
683
+.centerRight {
684
+  .el-tabs__nav-scroll {
685
+    display: flex;
686
+  }
687
+
688
+  .el-tabs__nav {
689
+    margin: 0 auto;
690
+  }
691
+
692
+  .el-table th .cell,
693
+  .el-table td .cell {
694
+    padding: 0 2px;
695
+  }
696
+}
697
+.preTabs {
698
+  .el-tabs__content {
699
+  }
700
+}
701
+.rightTabs {
702
+  height: 100%;
703
+
704
+  .el-tabs__content {
705
+  }
706
+}
707
+.centerDialog {
708
+  .el-dialog__body {
709
+    max-height: calc(100vh - 100px) !important;
710
+    padding: 0 20px;
711
+  }
712
+}
713
+</style>

+ 59 - 5
src/xt_pages/outpatientTool/gatherPrint.vue Bestand weergeven

@@ -10,12 +10,12 @@
10 10
         </div>
11 11
         <div class="listInfo">
12 12
             <div>科别:
13
-              <!-- {{getDepartment(his_patient.departments)}} -->
13
+              <span v-if="org_id!=10215"> {{getDepartment(his_patient.departments)}}</span> 
14 14
               {{getDepartment(his_record_patient.departments)}}
15 15
             </div>
16 16
             <div>床号:<span v-if="schedule.length > 0">{{getBedName(schedule[0].bed_id)}}</span></div>
17 17
             <div>门诊号:
18
-               <!-- {{his_patient.number}} -->
18
+               <span v-if="org_id!=10215">{{his_patient.number}}</span> 
19 19
                {{his_record_patient.ipt_otp_no}}
20 20
             </div>
21 21
             <div>姓名:{{patient.name}}</div>
@@ -45,11 +45,16 @@
45 45
             <div>护理费:{{getNursing()}}</div>
46 46
             <div>床位费:{{getBedCostTotal()}}</div>
47 47
         </div>
48
-        <div class="listInfo" style="margin-bottom: 20px;">
48
+        <div class="listInfo" style="margin-bottom: 10px;">
49 49
             <div>麻醉费:{{getAnesthesia()}}</div>
50 50
             <div>材料费:{{getMaterialCostTotal()}}</div>
51 51
             <div>其他:{{getOtherCostTotal()}}</div>
52 52
         </div>
53
+        <div class="listInfo" style="margin-bottom: 20px;">
54
+            <div>记账支付:{{getFundPaySumamt()}}</div>
55
+            <div>个人账号:{{getAcctPay()}}</div>
56
+            <div>现金支付:{{getPsnCashPay()}}</div>
57
+        </div>
53 58
         <table class="listTable" border="1">
54 59
             <tr>
55 60
                 <td style="text-align:center" >序号</td>
@@ -129,7 +134,6 @@
129 134
           medicalInsuranceLevelList:[],
130 135
           schedule:[],
131 136
           bedNumber:[],
132
-          tableList:[],
133 137
           order_info_list:[],
134 138
           balanceAccountsType:0,
135 139
           medicalInsuranceLevelList:[],
@@ -139,6 +143,8 @@
139 143
           start_time:"",
140 144
           end_time:"",
141 145
           his_record_patient:{},
146
+          orderList:[],
147
+          org_id:0,
142 148
         }
143 149
     },
144 150
     methods:{
@@ -189,7 +195,7 @@
189 195
           this.drugTypeList =response.data.data.drugTypeList
190 196
           this.costClassifyList = response.data.data.costClassifyList 
191 197
           var list = response.data.data.list
192
-          
198
+          this.orderList = response.data.data.orderList
193 199
 
194 200
           var new_arr = []
195 201
 
@@ -1059,10 +1065,58 @@
1059 1065
         }
1060 1066
       }
1061 1067
       return number
1068
+    },
1069
+    getTotalCountPrice(){
1070
+      var total_price = 0
1071
+      for(let i=0;i<this.tableList.length;i++){
1072
+         if(this.tableList[i].is_total == 2){
1073
+           total_price += this.tableList[i].pric * this.tableList[i].count_number
1074
+         }
1075
+      }
1076
+      if(total_price > 0){
1077
+        return total_price.toFixed(2)
1078
+      }else{
1079
+        return ""
1080
+      }
1081
+    },
1082
+    getPsnCashPay(){
1083
+      var psn_cash_pay = 0
1084
+      for(let i=0;i<this.orderList.length;i++){
1085
+        psn_cash_pay += this.orderList[i].psn_cash_pay
1086
+      }
1087
+      if(psn_cash_pay > 0){
1088
+         return psn_cash_pay.toFixed(2)
1089
+      }else{
1090
+        return 0.00
1091
+      }
1092
+    },
1093
+    getAcctPay(){
1094
+      var acct_pay = 0
1095
+      for(let i=0;i<this.orderList.length;i++){
1096
+         acct_pay +=this.orderList[i].acct_pay
1097
+      }
1098
+      if(acct_pay > 0){
1099
+        return acct_pay.toFixed(2)
1100
+      }else{
1101
+        return 0.00
1102
+      }
1103
+    },
1104
+    getFundPaySumamt(){
1105
+      var fund_pay_sumamt = 0
1106
+      for(let i=0;i<this.orderList.length;i++){
1107
+        fund_pay_sumamt +=this.orderList[i].fund_pay_sumamt
1108
+      }
1109
+      if(fund_pay_sumamt >0){
1110
+        return fund_pay_sumamt.toFixed(2)
1111
+      }else{
1112
+        return 0.00
1113
+      }
1062 1114
     }
1063 1115
 
1064 1116
     },
1065 1117
     created(){
1118
+      this.org_id = this.$store.getters.xt_user.org.id;
1119
+     
1066 1120
       this.getGatherDetailList()   
1067 1121
     }
1068 1122
 

+ 1 - 1
src/xt_pages/outpatientTool/gatherPrintInvoice.vue Bestand weergeven

@@ -16,7 +16,7 @@
16 16
             <tr>
17 17
                 <td>姓名:{{patient.name}}</td>
18 18
                 <td>科室:
19
-                    <!-- {{getDepartment(his_patient.departments)}} -->
19
+                    <span v-if="this.$store.getters.xt_user.org.id!=10215"> {{getDepartment(his_patient.departments)}}</span>
20 20
 
21 21
                    {{ getDepartment(his_record_patient.departments) }}
22 22
                 </td>

+ 1 - 2
src/xt_pages/outpatientTool/statistics.vue Bestand weergeven

@@ -167,11 +167,10 @@ export default {
167 167
 
168 168
     onRowClick(row, event, column) {
169 169
       this.currentRowIndex = row.row_index;
170
-      console.log(this.currentRowIndex, "this.currentRowIndex");
171 170
       this.$store.commit("SET_PAGEDATA", {
172 171
         table_id: this.currentRowIndex,
173 172
       });
174
-      console.log(this.$store.getters.pagedata.list.table_id, "kk");
173
+      // console.log(this.$store.getters.pagedata.list.table_id, "列表行id");
175 174
     },
176 175
     searchAction() {
177 176
       this.getPatientList();

+ 14 - 8
src/xt_pages/qcd/patientControlAnalysis.vue Bestand weergeven

@@ -348,6 +348,8 @@ export default {
348 348
       return new Date(time).getTime() / 1000
349 349
     },
350 350
     handleClick(patientid, inspectdate) {
351
+      console.log("patient_id",patientid)
352
+      console.log("inspectdate",inspectdate)
351 353
       // var id = 0
352 354
       // var dialysis_no = 0
353 355
       // for(let i=0;i<this.tablePatients.length;i++){
@@ -389,15 +391,15 @@ export default {
389 391
         patientid: this.patient_id,
390 392
         startime: this.listQuery.start_time,
391 393
         endtime: this.listQuery.end_time
392
-
393 394
       }
395
+      console.log("param",params)
394 396
       this.isLoadingTwo = true
395 397
       getPatientContorlAnalysis(params).then(response => {
396 398
         if (response.data.state == 1) {
397 399
           this.isLoadingTwo = false
398 400
 
399 401
           var control = response.data.data.patientcontorDetail
400
-          //  console.log("control",control)
402
+          console.log("control",control)
401 403
           let dataInfo = {}
402 404
           control.forEach((item, index) => {
403 405
             let { inspect_date } = item
@@ -475,7 +477,9 @@ export default {
475 477
               dataInfotwo[inspect_date] = {
476 478
                 inspect_date,
477 479
                 name: item.name,
478
-                dialysis_no: item.dialysis_no
480
+                dialysis_no: item.dialysis_no,
481
+                patient_id:item.patient_id,
482
+                inspect_date:item.inspect_date,
479 483
               }
480 484
             }
481 485
           })
@@ -486,6 +490,8 @@ export default {
486 490
               if (item.inspect_date == parseInt(it.name)) {
487 491
                 it.name = item.name
488 492
                 it.dialysis_no = item.dialysis_no
493
+                it.patient_id = item.patient_id
494
+                it.inspect_date = item.inspect_date
489 495
               }
490 496
             })
491 497
           })
@@ -510,7 +516,7 @@ export default {
510 516
           //     }
511 517
           //   }
512 518
           // }
513
-
519
+        
514 520
         } else {
515 521
           this.isLoadingTwo = false
516 522
 
@@ -523,7 +529,7 @@ export default {
523 529
         if (response.data.state == 1) {
524 530
           this.isLoadingTwo = false
525 531
           var patients = response.data.data.patients
526
-          console.log('patients', patients)
532
+        
527 533
           this.tablePatients = patients
528 534
 
529 535
           //  let dataInfothree = {}
@@ -544,13 +550,13 @@ export default {
544 550
           var total = response.data.data.total
545 551
           this.total = total
546 552
           var control = response.data.data.control
547
-          console.log('control', control)
553
+
548 554
           var infectiousControl = response.data.data.infectiousControl
549
-          // console.log("infectiouscontrol",infectiousControl)
555
+         
550 556
           infectiousControl.map(item => {
551 557
             control.push(item)
552 558
           })
553
-          console.log('infectiouscontrol', infectiousControl)
559
+
554 560
 
555 561
           //  var newPatinteArr = []
556 562
           //  patientlist.map(item=>{

+ 56 - 34
src/xt_pages/stock/detail/print.vue Bestand weergeven

@@ -10,7 +10,7 @@
10 10
         <div class="dialysis-print-order">
11 11
           <div class="order-yy-name">{{orgname}}</div>
12 12
           <div class="order-title" v-if="type == 1">入库单</div>
13
-        
13
+
14 14
           <div class="order-title" v-if="type == 2">出库单</div>
15 15
           <div class="order-title" v-if="type == 4">退库单</div>
16 16
 
@@ -27,11 +27,11 @@
27 27
               <td style="line-height: 50px" width="200">规格型号</td>
28 28
               <td style="line-height: 50px" width="80">数量</td>
29 29
               <td style="line-height: 50px" width="50">单位</td>
30
-            
30
+
31 31
               <td style="line-height:50px" width="80">
32
-                <span v-if="type == 1">进货价</span> 
33
-                <span v-if="type == 2">出货价</span> 
34
-                <span v-if="type == 4">退库价</span> 
32
+                <span v-if="type == 1">进货价</span>
33
+                <span v-if="type == 2">出货价</span>
34
+                <span v-if="type == 4">退库价</span>
35 35
               </td>
36 36
               <td style="line-height: 50px" width="80">总价</td>
37 37
               <td style="line-height: 50px" width="80">备 注</td>
@@ -47,16 +47,16 @@
47 47
               <td style="line-height: 50px">
48 48
                 {{item.specification_name}}
49 49
               </td>
50
-             
50
+
51 51
               <td style="line-height: 50px">
52 52
                 <span v-if="type == 1"> {{ item.warehousing_count }}</span>
53
-                <span v-if="type == 2"> 
54
-                  <span  v-if="org_id == 3907 || org_id == 9919 || org_id == 9583">{{getStockCount(item.good_id) }}</span> 
55
-                   <span  v-if="org_id == 10265 || org_id == 10215">{{getMySelfCount(item.good_id) }}</span>   
56
-                   <span v-if="org_id == 10210">{{getWarehouseOut(item.good_id)}}</span>
57
-                  <span v-if="org_id!=3907&&org_id!=10265&&org_id!=10285&&org_id!=9583&&org_id!=10215&&org_id!=10210">{{getStockCount(item.good_id) }}</span>
53
+                <span v-if="type == 2">
54
+                  <span  v-if="org_id == 3907 || org_id == 9919 || org_id == 9583">{{getStockCount(item.good_id) }}</span>
55
+                   <span  v-if="org_id == 10265 || org_id == 10215">{{getMySelfCount(item.good_id) }}</span>
56
+                   <span v-if="org_id == 10210 || org_id == 9671 || org_id == 10188 || org_id == 10217 || org_id == 9956 || org_id == 10191">{{getWarehouseOut(item.good_id)}}</span>
57
+                  <span v-if="org_id!=3907&&org_id!=10265&&org_id!=10285&&org_id!=9583&&org_id!=10215&&org_id!=10210&&org_id!=9671 && org_id!=10188&& org_id!=10217&& org_id!=9956&& org_id!=10191">{{getStockCount(item.good_id) }}</span>
58 58
                 </span>
59
-               
59
+
60 60
                 <span v-if="type == 4"> {{ item.count }}</span>
61 61
               </td>
62 62
               <td style="line-height: 50px">
@@ -64,11 +64,11 @@
64 64
               </td>
65 65
               <td style="line-height:50px">
66 66
                 <span v-if="type == 1"> {{ item.price }}</span>
67
-                <span v-if="type == 2"> 
68
-                  <span v-if="org_id == 9919">{{ item.buy_price }}</span>  
67
+                <span v-if="type == 2">
68
+                  <span v-if="org_id == 9919">{{ item.buy_price }}</span>
69 69
                   <span v-else>
70
-                    {{ item.packing_price }} 
71
-                  </span>  
70
+                    {{ item.packing_price }}
71
+                  </span>
72 72
                 </span>
73 73
                  <span v-if="type == 4"> {{ item.price }}</span>
74 74
               </td>
@@ -78,8 +78,9 @@
78 78
                   <span v-if="org_id == 3907 || org_id ==9919">
79 79
                      {{(getStockCount(item.good_id) * item.buy_price).toFixed(2)}}
80 80
                   </span>
81
-                  <span v-if="org_id == 10265 || org_id == 10215">{{(getMySelfCount(item.good_id)*item.packing_price).toFixed(2)}}</span>
82
-                  <span v-if="org_id!=3907&&org_id!=10265&&org_id!=9919&&org_id!=10215">{{(getStockCount(item.good_id) * item.packing_price).toFixed(2)}}</span>
81
+                  <span v-if="org_id == 10265 || org_id == 10215  ">{{(getMySelfCount(item.good_id)*item.packing_price).toFixed(2)}}</span>
82
+                   <span v-if="org_id == 10210 || org_id == 9671 || org_id == 10188 || org_id == 10217 || org_id == 9956 || org_id == 10191">{{(getWarehouseOut(item.good_id)*item.packing_price).toFixed(2)}}</span>
83
+                  <span v-if="org_id!=3907&&org_id!=10265&&org_id!=9919&&org_id!=10215&&org_id!=9671 && org_id!=10188 && org_id!=10217 && org_id!= 9956 && org_id!=10191">{{(getStockCount(item.good_id) * item.packing_price).toFixed(2)}}</span>
83 84
                 </span>
84 85
                 <span v-if="type == 4">{{(item.count * item.price).toFixed(2)}}</span>
85 86
               </td>
@@ -98,19 +99,19 @@
98 99
               <td style="line-height: 50px"  width="50"></td>
99 100
               <td style="line-height: 50px"   width="80"></td>
100 101
               <td style="line-height: 50px"  width="80">
101
-                <span v-if="type == 1">{{getWareInfoTotal().toFixed(2)}}</span> 
102
+                <span v-if="type == 1">{{getWareInfoTotal().toFixed(2)}}</span>
102 103
                 <span v-if="type == 2">
103 104
                   <span v-if="org_id == 3907 || org_id == 9919">{{getWareOutTotalOne().toFixed(2)}}</span>
104 105
                   <span v-if="org_id == 10265 || org_id == 10215">{{getWareOutTotalSix().toFixed(2)}}</span>
105 106
                   <span v-if="org_id!=3907 && org_id!=9919 && org_id!=10265 && org_id!=10215"> {{getWareOutTotal().toFixed(2)}}</span>
106
-                 </span> 
107
-                <span v-if="type == 4">{{getWareOutTotal().toFixed(2)}}</span> 
107
+                 </span>
108
+                <span v-if="type == 4">{{getWareOutTotal().toFixed(2)}}</span>
108 109
               </td>
109 110
               <td style="line-height: 50px" width="80">
110
-               
111
+
111 112
               </td>
112 113
             </tr>
113
-          </table> 
114
+          </table>
114 115
 
115 116
           <div style="display:flex;margin-top:20px;float:right;">
116 117
             <div style="width:50px;">审批:</div><div style="width:100px;"></div>
@@ -208,7 +209,7 @@
208 209
         })
209 210
       },
210 211
       calCount(stock) {
211
-      
212
+
212 213
         let total = 0
213 214
         var array = []
214 215
         if (this.type == 1) {
@@ -308,7 +309,7 @@
308 309
       },
309 310
 
310 311
      getStockCount(id){
311
-       
312
+
312 313
        var count = ""
313 314
        for(let i=0;i<this.stockTotal.length;i++){
314 315
           if(id == this.stockTotal[i].good_id){
@@ -331,19 +332,19 @@
331 332
        for(let i=0;i<this.informationList.length;i++){
332 333
         for(let j=0;j<this.wareOutInfo.length;j++){
333 334
            if(this.informationList[i].id == this.wareOutInfo[j].good_id){
334
-             this.wareOutInfo[j].buy_price =  this.informationList[i].buy_price 
335
+             this.wareOutInfo[j].buy_price =  this.informationList[i].buy_price
335 336
            }
336 337
         }
337 338
        }
338
-      
339
+
339 340
        for(let j=0;j<this.wareOutInfo.length;j++){
340 341
          if(id == this.wareOutInfo[j].good_id){
341 342
             sum += (this.wareOutInfo[j].buy_price * this.wareOutInfo[j].count).toFixed(2)
342 343
          }
343 344
        }
344
-       
345
+
345 346
        return sum
346
-       
347
+
347 348
      },
348 349
      getReailPrice(id){
349 350
        var price = 0
@@ -381,8 +382,8 @@
381 382
            this.stockDatas = list
382 383
            var stockTotal = response.data.data.stockTotal
383 384
           this.stockTotal = stockTotal
384
-           
385
-           
385
+
386
+
386 387
          }
387 388
       })
388 389
      },
@@ -392,7 +393,7 @@
392 393
         if(response.data.state == 1){
393 394
           var total =   response.data.data.total
394 395
           var list = response.data.data.list
395
-          this.stockDatas = list
396
+          this.wareOutList = list
396 397
         }
397 398
       })
398 399
      },
@@ -433,14 +434,34 @@
433 434
        }
434 435
        return total
435 436
      },
437
+    //  getPrintStockGood(){
438
+
439
+    //   getPrintStockGood(this.queryParams).then(response=>{
440
+    //       if(response.data.state == 1){
441
+    //         var list =  response.data.data.list
442
+    //         console.log("list23323232323232",list)
443
+    //         this.stockDatas = list
444
+
445
+    //       }
446
+    //   })
447
+    // },
448
+    getWarehouseOut(good_id){
449
+      var total = 0
450
+      for(let i=0;i<this.wareOutList.length;i++){
451
+         if(this.wareOutList[i].good_id == good_id){
452
+            total += this.wareOutList[i].count
453
+         }
454
+      }
455
+      return total
456
+    }
436 457
      getPrintStockGood(){
437
-     
458
+
438 459
       getPrintStockGood(this.queryParams).then(response=>{
439 460
           if(response.data.state == 1){
440 461
             var list =  response.data.data.list
441 462
             console.log("list23323232323232",list)
442 463
             this.wareOutList = list
443
-           
464
+
444 465
           }
445 466
       })
446 467
     },
@@ -459,6 +480,7 @@
459 480
       this.orgname = xtuser.org.org_name
460 481
       this.goodUnit = this.$store.getters.good_unit
461 482
       this.getGoodDetailPrintList()
483
+      this.getStockDetail()
462 484
       this.getPrintStockGood()
463 485
     }
464 486
 

+ 33 - 6
src/xt_pages/stock/detail/stockOutDetail.vue Bestand weergeven

@@ -165,7 +165,7 @@
165 165
       <el-pagination
166 166
         @size-change="handleSizeChange"
167 167
         @current-change="handleCurrentChange"
168
-        :page-sizes="[10, 50, 100,1000,1500]"
168
+        :page-sizes="[10, 50, 100,1000,1500,3000]"
169 169
         :page-size="10"
170 170
         background
171 171
         style="margin-top:20px;float: right"
@@ -265,6 +265,7 @@ export default {
265 265
       tableDataList:[],
266 266
       storehouse_id:0,
267 267
       houseList:[],
268
+      wareOutList:[],
268 269
     };
269 270
   },
270 271
   methods: {
@@ -391,6 +392,7 @@ export default {
391 392
           for(let i=0;i<response.data.data.houseList.length;i++){
392 393
            this.houseList.push(response.data.data.houseList[i])
393 394
           }
395
+          this.wareOutList =  response.data.data.list
394 396
           var total = 0
395 397
           for (let i = 0; i < response.data.data.list.length; i++) {
396 398
             this.tableData.push(response.data.data.list[i])
@@ -778,15 +780,31 @@ export default {
778 780
           this.tableOut[i].total_price = (this.getMySelfCount(this.tableOut[i].good_id) * this.tableOut[i].retail_price).toFixed(2)
779 781
         }else if(this.orgId == 10215){
780 782
           this.tableOut[i].total_price = (this.getMySelfCount(this.tableOut[i].good_id) * this.tableOut[i].retail_price).toFixed(2)
783
+        }else if(this.orgId == 10210){
784
+          this.tableOut[i].total_price = (this.getWarehouseOut(this.tableOut[i].good_id) * this.tableOut[i].retail_price).toFixed(2)
785
+        }else if(this.orgId == 9671){
786
+          this.tableOut[i].total_price = (this.getWarehouseOut(this.tableOut[i].good_id) * this.tableOut[i].retail_price).toFixed(2)
787
+        }else if(this.orgId == 9956){
788
+          this.tableOut[i].total_price = (this.getWarehouseOut(this.tableOut[i].good_id) * this.tableOut[i].retail_price).toFixed(2)
789
+        }else if(this.orgId == 10217){
790
+          this.tableOut[i].total_price = (this.getWarehouseOut(this.tableOut[i].good_id) * this.tableOut[i].retail_price).toFixed(2)
791
+        }else if(this.orgId == 10191){
792
+          this.tableOut[i].total_price = (this.getWarehouseOut(this.tableOut[i].good_id) * this.tableOut[i].retail_price).toFixed(2)
793
+        }else if(this.orgId == 10188){
794
+          this.tableOut[i].total_price = (this.getWarehouseOut(this.tableOut[i].good_id) * this.tableOut[i].retail_price).toFixed(2)
781 795
         }else{
782 796
           this.tableOut[i].total_price = (this.getStockCount(this.tableOut[i].good_id) * this.tableOut[i].retail_price).toFixed(2)
783 797
         }
784 798
 
785
-        if(this.orgId  == 10265 || this.orgId ==10215 ){
799
+        if(this.orgId  == 10265 || this.orgId ==10215){
786 800
 
787 801
          this.tableOut[i].out_count = this.getMySelfCount(this.tableOut[i].good_id)
788 802
         }
789
-        if(this.orgId!=10265 && this.orgId !=10215){
803
+        if(this.orgId == 10210 || this.orgId == 9671 || this.orgId == 10210 || this.orgId == 9956 || this.orgId == 10217 || this.orgId == 10188 || this.orgId == 10191){
804
+          this.tableOut[i].out_count = this.getWarehouseOut(this.tableOut[i].good_id)
805
+          console.log("out_count232233232332",this.tableOut[i].out_count)
806
+        }
807
+        if(this.orgId!=10265 && this.orgId !=10215 && this.orgId!=10210&&this.orgId!=9671 && this.orgId!=9956&& this.orgId!=10217 && this.orgId!=10188 && this.orgId!=10191){
790 808
           this.tableOut[i].out_count = this.getStockCount(this.tableOut[i].good_id)
791 809
         }
792 810
        }
@@ -821,12 +839,12 @@ export default {
821 839
           if(this.orgId == 9919){
822 840
              this.tableDataList[i].total_price = (this.tableDataList[i].count * this.tableDataList[i].GoodInfo.buy_price).toFixed(2)
823 841
              total += this.tableDataList[i].count * this.tableDataList[i].buy_price
824
-          }else{
842
+          }
843
+          if(this.orgId != 9919){
825 844
             this.tableDataList[i].total_price = (this.tableDataList[i].count * this.tableDataList[i].price).toFixed(2)
826 845
             total += this.tableDataList[i].count * this.tableDataList[i].price
827 846
           }
828 847
 
829
-
830 848
         }
831 849
         obj.total_price = total.toFixed(2)
832 850
 
@@ -926,7 +944,16 @@ export default {
926 944
      changeHouseList(){
927 945
        this.houseList = []
928 946
        this.GetCancelStock()
929
-     }
947
+     },
948
+     getWarehouseOut(good_id){
949
+      var total = 0
950
+      for(let i=0;i<this.wareOutList.length;i++){
951
+         if(this.wareOutList[i].good_id == good_id){
952
+            total += this.wareOutList[i].count
953
+         }
954
+      }
955
+      return total
956
+    }
930 957
   }
931 958
 };
932 959
 </script>

+ 1 - 1
src/xt_pages/stock/drugs/cancelDrugOrderPrint.vue Bestand weergeven

@@ -65,7 +65,7 @@
65 65
           </div>
66 66
           <div v-if="orgId == 10024" style="display:flex;margin-top:1px;float:right;">
67 67
             <div style="width:50px;">科室:</div><div style="width:60px;"></div>
68
-            <div style="width:70px;">领人:</div><div style="width:60px;"></div>
68
+            <div style="width:70px;">领人:</div><div style="width:60px;"></div>
69 69
             <div style="width:80px;">审批:</div><div style="width:100px;">肖庆娥</div>
70 70
             <div style="width:50px;">会计:</div><div style="width:100px;">徐立琼</div>
71 71
             <div style="width:50px;">审核:</div><div style="width:100px;">徐立琼</div>

+ 8 - 3
src/xt_pages/stock/drugs/components/drugOutDetail.vue Bestand weergeven

@@ -428,9 +428,9 @@ export default {
428 428
                order[i].total_price = order[i].count * order[i].last_price
429 429
                total_price += order[i].count * order[i].last_price
430 430
              }else{
431
-              
431
+
432 432
                if(order[i].price > 0){
433
-                
433
+
434 434
                  if(order[i].count_unit == order[i].min_unit && order[i].max_unit!=order[i].min_unit){
435 435
                    order[i].total_price = order[i].count * order[i].price
436 436
                  }
@@ -471,6 +471,8 @@ export default {
471 471
                 }
472 472
 
473 473
                  if(order[i].count_unit == order[i].max_unit && order[i].max_unit==order[i].min_unit){
474
+
475
+                if(order[i].count_unit == order[i].max_unit){
474 476
                    if(order[i].is_sys == 0){
475 477
                      order[i].total_price += order[i].count * this.getPrice(order[i].drug_id)
476 478
                    }else{
@@ -664,7 +666,10 @@ export default {
664 666
               if(this.tableData[i].count_unit == this.tableData[i].min_unit && this.tableData[i].max_unit!=this.tableData[i].min_unit){
665 667
                  this.tableData[i].total_price = (this.tableData[i].count * this.tableData[i].price)
666 668
               }
667
-              if(this.tableData[i].count_unit == this.tableData[i].max_unit){
669
+              if(this.tableData[i].count_unit == this.tableData[i].max_unit && this.tableData[i].max_unit !=this.tableData[i].min_unit){
670
+                this.tableData[i].total_price = (this.tableData[i].count * this.tableData[i].price)*this.tableData[i].min_number
671
+              }
672
+              if(this.tableData[i].count_unit == this.tableData[i].max_unit && this.tableData[i].max_unit ==this.tableData[i].min_unit){
668 673
                 this.tableData[i].total_price = (this.tableData[i].count * this.tableData[i].price)*this.tableData[i].min_number
669 674
               }
670 675
             }

+ 41 - 0
src/xt_pages/stock/drugs/drugStockInOrder.vue Bestand weergeven

@@ -77,6 +77,23 @@
77 77
             @change="endTimeChange"
78 78
           ></el-date-picker>
79 79
         </div>
80
+        <!-- <div style="margin-left: 10px">
81
+          <span>审核状态:</span>
82
+          <el-select
83
+            v-model="check_id"
84
+            style="width: 140px; margin-right: 10px"
85
+            placeholder="请选择"
86
+            @change="changeTypeName"
87
+          >
88
+            <el-option
89
+              v-for="item in checkList"
90
+              :key="item.id"
91
+              :label="item.name"
92
+              :value="item.id"
93
+            >
94
+            </el-option>
95
+          </el-select>
96
+        </div> -->
80 97
       </div>
81 98
 
82 99
       <div class="cell clearfix">
@@ -489,6 +506,7 @@ export default {
489 506
         loading: false,
490 507
         warehouseInfoDate: [],
491 508
       },
509
+      check_id: 0,
492 510
 
493 511
       startTime: "",
494 512
       dialogVisible: false,
@@ -510,6 +528,29 @@ export default {
510 528
   },
511 529
 
512 530
   methods: {
531
+    changeTypeName() {
532
+      this.getlist();
533
+    },
534
+    getlist() {
535
+      var params = {
536
+        check_id: this.check_id,
537
+        start_time: this.start_time,
538
+        end_time: this.end_time,
539
+        keyword: this.keywords,
540
+        page: this.page,
541
+        limit: this.limit,
542
+      };
543
+      getAllSecondOrderList(params).then((response) => {
544
+        if (response.data.state == 1) {
545
+          var list = response.data.data.list;
546
+          this.tableList = list;
547
+          var total = response.data.data.total;
548
+          this.total = total;
549
+          this.houseList = response.data.data.houseList;
550
+          this.doctorList = response.data.data.doctorList;
551
+        }
552
+      });
553
+    },
513 554
     search: function () {
514 555
       const Params = {
515 556
         page: this.page,

+ 24 - 5
src/xt_pages/stock/drugs/drugStockInOrderAdd.vue Bestand weergeven

@@ -211,6 +211,7 @@
211 211
                     filterable
212 212
                     placeholder="请选择单位"
213 213
                     style="width: 80px"
214
+                    @change="changeUnit(scope.row,scope.$index)"
214 215
                   >
215 216
                     <el-option
216 217
                       v-for="(option, index) in unitList"
@@ -267,9 +268,7 @@
267 268
 
268 269
           <el-table-column label="总价(元)" align="center" width="80">
269 270
             <template slot-scope="scope">
270
-              {{
271
-                calculate(scope.row.last_price * scope.row.warehousing_count)
272
-              }}
271
+              {{ calculate(scope.row.last_price * scope.row.warehousing_count) }}
273 272
             </template>
274 273
           </el-table-column>
275 274
 
@@ -704,6 +703,8 @@ export default {
704 703
       tempObj["dose_unit"] = "";
705 704
       tempObj["dealer"] = "";
706 705
       tempObj["last_price"] = "";
706
+      tempObj["count_unit"] = "";
707
+      tempObj["min_number"] = "";
707 708
       this.recordInfo.recordData.push(tempObj);
708 709
     },
709 710
     handleDelete: function (index, row) {
@@ -832,7 +833,7 @@ export default {
832 833
             this.$message.success("请添加入库商品");
833 834
             return;
834 835
           }
835
-        
836
+
836 837
           for (let i = 0; i < this.recordInfo.recordData.length; i++) {
837 838
             if (this.recordInfo.recordData[i].dealer == "") {
838 839
               this.recordInfo.recordData[i].dealer = 0;
@@ -1029,6 +1030,8 @@ export default {
1029 1030
           this.recordInfo.recordData[i].number = val.number;
1030 1031
           this.recordInfo.recordData[i].max_unit = val.max_unit;
1031 1032
           this.recordInfo.recordData[i].min_unit = val.min_unit;
1033
+          this.recordInfo.recordData[i].count_unit = val.max_unit;
1034
+          this.recordInfo.recordData[i].min_number = val.min_number
1032 1035
           if (val.dealer == 0) {
1033 1036
             this.recordInfo.recordData[i].dealer = "";
1034 1037
           } else {
@@ -1084,6 +1087,19 @@ export default {
1084 1087
          }
1085 1088
       })
1086 1089
     }
1090
+    changeUnit(val,index){
1091
+    // console.log("val3232323232",val)
1092
+    //  for(let i=0;i<this.recordInfo.recordData.length;i++){
1093
+    //    if(i == index){
1094
+    //      if(this.recordInfo.recordData[i].max_unit == this.recordInfo.recordData[i].count_unit){
1095
+
1096
+    //      }
1097
+    //      if(this.recordInfo.recordData[i].min_unit == this.recordInfo.recordData[i].count_unit){
1098
+
1099
+    //      }
1100
+    //    }
1101
+    //  }
1102
+    }
1087 1103
   },
1088 1104
   created() {
1089 1105
     if (this.$route.path == "/Pharmacy/in/add") {
@@ -1111,7 +1127,8 @@ export default {
1111 1127
     tempObj["drug_name"] = "";
1112 1128
     tempObj["dosage"] = "";
1113 1129
     tempObj["max_unit"] = "";
1114
-    (tempObj["min_unit"] = ""), (tempObj["lot_number"] = "");
1130
+    tempObj["min_unit"] = "",
1131
+    tempObj["lot_number"] = "";
1115 1132
     tempObj["product_date"] = "";
1116 1133
     tempObj["expiry_date"] = "";
1117 1134
     tempObj["warehousing_count"] = "";
@@ -1124,6 +1141,8 @@ export default {
1124 1141
     tempObj["drug_type"] = "";
1125 1142
     tempObj["dealer"] = "";
1126 1143
     tempObj["number"] = "";
1144
+    tempObj["count_unit"] = "";
1145
+    tempObj["min_number"] = "";
1127 1146
     this.recordInfo.recordData.push(tempObj);
1128 1147
 
1129 1148
     this.GetConfigInfo();

+ 2 - 2
src/xt_pages/stock/drugs/drugStockInOrderDetailPrint.vue Bestand weergeven

@@ -38,7 +38,7 @@
38 38
               <td style="line-height: 18px">
39 39
                  <span v-if="item.drug_id != 0">{{item.drug_name}}</span>
40 40
               </td>
41
-              <td style="line-height: 18px">{{ item.batch_number }}</td>
41
+              <td style="line-height: 18px">{{ item.number }}</td>
42 42
               <td style="line-height: 18px">
43 43
                  <span v-if="item.drug_id != 0">{{item.dose}}{{item.dose_unit}}*{{item.min_number}}{{item.min_unit}}/{{item.max_unit}}</span>
44 44
               </td>
@@ -51,7 +51,7 @@
51 51
                    <span>{{ item.warehousing_count }}</span>
52 52
               </td>
53 53
               <td style="line-height: 18px">
54
-                <span>{{item.max_unit}}</span>
54
+                <span>{{item.limax_unit}}</span>
55 55
               </td>
56 56
               <td style="line-height:18px">
57 57
                   <span>{{(item.warehousing_count * item.price).toFixed(2)}}</span>

+ 48 - 6
src/xt_pages/stock/drugs/drugStockOutOrder.vue Bestand weergeven

@@ -78,6 +78,23 @@
78 78
         </div>
79 79
 
80 80
 
81
+         <!-- <div style="margin-left: 10px">
82
+          <span>审核状态:</span>
83
+          <el-select
84
+            v-model="check_id"
85
+            style="width: 140px; margin-right: 10px"
86
+            placeholder="请选择"
87
+            @change="changeTypeName"
88
+          >
89
+            <el-option
90
+              v-for="item in checkList"
91
+              :key="item.id"
92
+              :label="item.name"
93
+              :value="item.id"
94
+            >
95
+            </el-option>
96
+          </el-select>
97
+        </div> -->
81 98
       </div>
82 99
 
83 100
       <div class="cell clearfix">
@@ -104,7 +121,7 @@
104 121
               :label="option.name"
105 122
               :value="option.id">
106 123
             </el-option>
107
-        </el-select> 
124
+        </el-select>
108 125
 
109 126
       <span>&nbsp;&nbsp;</span>
110 127
       <label class="title"><span class="name">审核状态</span> :</label>
@@ -115,7 +132,7 @@
115 132
             :label="option.name"
116 133
             :value="option.id">
117 134
           </el-option>
118
-      </el-select>  
135
+      </el-select>
119 136
       </div>
120 137
 
121 138
       <el-table
@@ -178,7 +195,7 @@
178 195
           <template slot-scope="scope">
179 196
             <span v-if="scope.row.is_check == 1">已审核</span>
180 197
             <span v-if="scope.row.is_check == 2">未审核</span>
181
-          
198
+
182 199
           </template>
183 200
         </el-table-column>
184 201
 
@@ -554,6 +571,7 @@ export default {
554 571
       ],
555 572
       page: 1,
556 573
       limit: 5,
574
+      check_id: 0,
557 575
       checked: false,
558 576
       total: 0,
559 577
       pageTotal: 0,
@@ -621,6 +639,30 @@ export default {
621 639
     };
622 640
   },
623 641
   methods: {
642
+      changeTypeName() {
643
+      this.getlist();
644
+    },
645
+    getlist() {
646
+      var params = {
647
+        check_id: this.check_id,
648
+        start_time: this.start_time,
649
+        end_time: this.end_time,
650
+        keyword: this.keywords,
651
+        page: this.page,
652
+        limit: this.limit,
653
+      };
654
+      getAllSecondOrderList(params).then((response) => {
655
+        if (response.data.state == 1) {
656
+          var list = response.data.data.list;
657
+          this.tableList = list;
658
+          var total = response.data.data.total;
659
+          this.total = total;
660
+          this.houseList = response.data.data.houseList;
661
+          this.doctorList = response.data.data.doctorList;
662
+        }
663
+      });
664
+    },
665
+
624 666
     search: function () {
625 667
       const Params = {
626 668
         page: this.page,
@@ -665,7 +707,7 @@ export default {
665 707
       });
666 708
       }
667 709
 
668
- 
710
+
669 711
     },
670 712
     GetWarehouseOut: function () {
671 713
       const Params = {
@@ -793,7 +835,7 @@ export default {
793 835
           row.is_sys +
794 836
           "&supply_cancel_out_id=" +
795 837
           row.supply_cancel_out_id+"&is_check="+row.is_check
796
-          
838
+
797 839
       });
798 840
     },
799 841
     handleSearch(val) {
@@ -896,7 +938,7 @@ export default {
896 938
           if(this.selectedTableData[i].supply_cancel_out_id >0){
897 939
              idsOne.push(this.selectedTableData[i].supply_cancel_out_id);
898 940
           }
899
-        
941
+
900 942
         }
901 943
       }
902 944
       if (idsOne.length > 0) {

+ 19 - 40
src/xt_pages/stock/drugs/drugStockOutOrderAdd.vue Bestand weergeven

@@ -593,6 +593,7 @@ export default {
593 593
       tempObj["total_count"] = 0;
594 594
       tempObj["max_unit_fisrt"] = 0;
595 595
       tempObj["min_unit_fisrt"] = 0;
596
+      tempObj["total_price"] = 0;
596 597
       this.recordInfo.recordData.push(tempObj);
597 598
     },
598 599
     handleDelete: function (index, row) {
@@ -687,60 +688,42 @@ export default {
687 688
             return;
688 689
           }
689 690
           for (let i = 0; i < this.recordInfo.recordData.length; i++) {
690
-            this.recordInfo.recordData[i].price =
691
-              this.recordInfo.recordData[i].price.toString();
691
+            this.recordInfo.recordData[i].total_price = (this.recordInfo.recordData[i].count * this.recordInfo.recordData[i].price).toString()
692
+            this.recordInfo.recordData[i].price = this.recordInfo.recordData[i].price.toString();
692 693
 
693 694
             for (let j = 0; j < this.manufacturerList.length; j++) {
694
-              if (
695
-                this.recordInfo.recordData[i].manufacturer ==
696
-                this.manufacturerList[j].manufacturer_name
697
-              ) {
698
-                this.recordInfo.recordData[i].manufacturer =
699
-                  this.manufacturerList[j].id;
695
+              if (this.recordInfo.recordData[i].manufacturer ==  this.manufacturerList[j].manufacturer_name) {
696
+                this.recordInfo.recordData[i].manufacturer = this.manufacturerList[j].id;
700 697
               }
701 698
             }
702 699
             if (this.recordInfo.recordData[i].dealer == "") {
703
-              this.recordInfo.recordData[i].dealer = 0;
700
+                this.recordInfo.recordData[i].dealer = 0;
704 701
             }
705 702
             for (let z = 0; z < this.dealerList.length; z++) {
706
-              if (
707
-                this.recordInfo.recordData[i].dealer ==
708
-                this.dealerList[z].dealer_name
709
-              ) {
703
+              if (this.recordInfo.recordData[i].dealer ==this.dealerList[z].dealer_name) {
710 704
                 this.recordInfo.recordData[i].dealer = this.dealerList[z].id;
711 705
               }
712 706
             }
713 707
 
714 708
             for (let y = 0; y < this.numberList.length; y++) {
715
-              if (
716
-                this.recordInfo.recordData[i].batch_number ==
717
-                this.numberList[y].id
718
-              ) {
719
-                this.recordInfo.recordData[i].batch_number =
720
-                  this.numberList[y].batch_number;
721
-                this.recordInfo.recordData[i].warehouse_info_id =
722
-                  this.numberList[y].id;
709
+              if (this.recordInfo.recordData[i].batch_number ==this.numberList[y].id) {
710
+                this.recordInfo.recordData[i].batch_number = this.numberList[y].batch_number;
711
+                this.recordInfo.recordData[i].warehouse_info_id = this.numberList[y].id;
723 712
               }
724 713
             }
725 714
             for (let s = 0; s < this.doctorList.length; s++) {
726
-              if (
727
-                this.recordInfo.recordData[i].admin_user_id ==
728
-                this.doctorList[s].user_name
729
-              ) {
730
-                this.recordInfo.recordData[i].admin_user_id =
731
-                  this.doctorList[s].admin_user_id;
715
+              if (this.recordInfo.recordData[i].admin_user_id == this.doctorList[s].user_name) {
716
+                 this.recordInfo.recordData[i].admin_user_id = this.doctorList[s].admin_user_id;
732 717
               }
733 718
             }
734 719
 
735
-            this.recordInfo.recordData[i].last_price =
736
-              this.recordInfo.recordData[i].last_price.toString();
737
-            this.recordInfo.recordData[i].stock_count =
738
-              this.recordInfo.recordData[i].stock_count.toString();
720
+            this.recordInfo.recordData[i].last_price = this.recordInfo.recordData[i].last_price.toString();
721
+            this.recordInfo.recordData[i].stock_count = this.recordInfo.recordData[i].stock_count.toString();
739 722
           }
740 723
           const params = {
741 724
             stockOut: this.recordInfo.recordData,
742 725
           };
743
-
726
+          console.log("param22222222",params)
744 727
           const loading = this.$loading({
745 728
             lock: true,
746 729
             text: "Loading",
@@ -965,7 +948,6 @@ export default {
965 948
     },
966 949
     changeUnit(val, index) {
967 950
       console.log("vla33232233232323232", val);
968
-
969 951
       this.getDrugBatchNumber(val.drug_id);
970 952
       for (let i = 0; i < this.recordInfo.recordData.length; i++) {
971 953
         if (this.recordInfo.recordData[i].drug_id == val.drug_id) {
@@ -974,16 +956,12 @@ export default {
974 956
             this.recordInfo.recordData[i].price = val.retail_price;
975 957
           }
976 958
           if (this.recordInfo.recordData[i].max_unit == val.min_unit) {
977
-            this.recordInfo.recordData[i].price =
978
-              this.recordInfo.recordData[i].min_price;
959
+            this.recordInfo.recordData[i].price = this.recordInfo.recordData[i].min_price;
979 960
           }
980 961
         }
981 962
         for (let j = 0; j < this.numberList.length; j++) {
982
-          if (
983
-            this.recordInfo.recordData[i].batch_number == this.numberList[j].id
984
-          ) {
985
-            this.recordInfo.recordData[i].batch_number =
986
-              this.numberList[j].batch_number;
963
+          if (this.recordInfo.recordData[i].batch_number == this.numberList[j].id) {
964
+            this.recordInfo.recordData[i].batch_number = this.numberList[j].batch_number;
987 965
           }
988 966
         }
989 967
       }
@@ -1215,6 +1193,7 @@ export default {
1215 1193
     tempObj["total_count"] = 0;
1216 1194
     tempObj["max_unit_fisrt"] = 0;
1217 1195
     tempObj["min_unit_fisrt"] = 0;
1196
+    tempObj["total_price"] = 0;
1218 1197
     this.recordInfo.recordData.push(tempObj);
1219 1198
     this.GetConfigInfo();
1220 1199
     this.propForm.goodUnit = this.$store.getters.good_unit;

+ 13 - 12
src/xt_pages/stock/drugs/drugStockOutOrderDetailPrint.vue Bestand weergeven

@@ -8,6 +8,7 @@
8 8
     <div class="app-container ">
9 9
       <div id="dialysis-print-box">
10 10
         <div v-if="orgId!=9675 && orgId!=9671 && orgId!=10210">
11
+        <div v-if="orgId!=9671 && orgId!=10210 && orgId!=10188 && orgId!=10127 && orgId!=10164 && orgId!=3877">
11 12
         <div class="dialysis-print-order" v-for="(it,index) in tableList" :key="index">
12 13
          <div class="order-yy-name" style="font-size:22px;font-weight:bold;letter-spacing:0px;margin-top:40px">{{orgName}}</div>
13 14
           <div class="order-title" style="font-weight:500;font-size:18px;">药品出库登记表</div>
@@ -68,17 +69,17 @@
68 69
           </div>
69 70
           <div v-if="orgId == 10024" style="display:flex;margin-top:1px;float:right;">
70 71
             <div style="width:50px;">科室:</div><div style="width:60px;"></div>
71
-            <div style="width:70px;">领人:</div><div style="width:60px;"></div>
72
+            <div style="width:70px;">领人:</div><div style="width:60px;"></div>
72 73
             <div style="width:80px;">审批:</div><div style="width:100px;">肖庆娥</div>
73 74
             <div style="width:50px;">会计:</div><div style="width:100px;">徐立琼</div>
74 75
             <div style="width:50px;">审核:</div><div style="width:100px;">徐立琼</div>
75 76
             <div style="width:70px;">制单人:</div><div style="width:100px;">徐立琼</div>
76 77
           </div>
77 78
         </div>
78
-      </div> 
79
+      </div>
79 80
 
80 81
 
81
-      <div v-if="orgId == 9675 || orgId == 10210 || orgId == 9671">
82
+      <div v-if="orgId == 9671 || orgId == 10210 || orgId == 10188 || orgId == 10127 || orgId ==10164 || orgId ==3877">
82 83
        <div class="dialysis-print-order" v-for="(it,index) in tableData" :key="index" >
83 84
          <div class="order-yy-name" style="font-size:22px;font-weight:bold;letter-spacing:0px;margin-top:40px">{{orgName}}</div>
84 85
           <div class="order-title" style="font-weight:500;font-size:18px;">药品出库登记表</div>
@@ -105,7 +106,7 @@
105 106
                 <span>{{item.drug.drug_name}}</span>
106 107
               </td>
107 108
               <td style="line-height: 50px">
108
-                  <span>{{item.drug.dose}}{{item.dose_unit}}*{{item.drug.min_number}}{{item.drug.min_unit}}/{{item.drug.max_unit}}</span>
109
+                  <span>{{item.drug.dose}}{{item.drug.dose_unit}}*{{item.drug.min_number}}{{item.drug.min_unit}}/{{item.drug.max_unit}}</span>
109 110
               </td>
110 111
               <td style="line-height: 50px">
111 112
                   {{item.count}}
@@ -121,7 +122,7 @@
121 122
                    {{(item.count/item.min_number * item.price).toFixed(2)}}
122 123
                 </span>
123 124
                 <span v-else> {{(item.count * item.price).toFixed(2)}}</span>
124
-               
125
+
125 126
              </td>
126 127
              <td>{{item.drug_warehouse_info.batch_number}}</td>
127 128
              <td>{{(getTime(item.product_date))}}</td>
@@ -144,7 +145,7 @@
144 145
           </div>
145 146
           <div v-if="orgId == 10024" style="display:flex;margin-top:1px;float:right;">
146 147
             <div style="width:50px;">科室:</div><div style="width:60px;"></div>
147
-            <div style="width:70px;">领人:</div><div style="width:60px;"></div>
148
+            <div style="width:70px;">领人:</div><div style="width:60px;"></div>
148 149
             <div style="width:80px;">审批:</div><div style="width:100px;">肖庆娥</div>
149 150
             <div style="width:50px;">会计:</div><div style="width:100px;">徐立琼</div>
150 151
             <div style="width:50px;">审核:</div><div style="width:100px;">徐立琼</div>
@@ -290,7 +291,7 @@
290 291
             for (let i = 0; i < response.data.data.list.length; i++) {
291 292
               this.list.push(response.data.data.list[i])
292 293
             }
293
-           
294
+
294 295
           }
295 296
         })
296 297
       },
@@ -393,7 +394,7 @@
393 394
              var info = response.data.data.info
394 395
             var warehousing = response.data.data.warehousing
395 396
             this.warehouseList = warehousing
396
-          
397
+
397 398
             for(let i=0;i<info.length;i++){
398 399
                info[i].child = []
399 400
               for(let j=0;j<warehousing.length;j++){
@@ -402,11 +403,11 @@
402 403
                 }
403 404
               }
404 405
             }
405
-            
406
+
406 407
             var manufacturerList = response.data.data.manufacturerList
407
-           
408
+
408 409
             this.manufactureList = manufacturerList
409
-            
410
+
410 411
             this.tableList = info
411 412
             this.tableData = response.data.data.drug_warhouse_out
412 413
             console.log("nfo32323223323223232323",this.tableData)
@@ -434,7 +435,7 @@
434 435
     created() {
435 436
       this.orgName = this.$store.getters.xt_user.org.org_name;
436 437
       const order_id = this.$route.query.id;
437
-      this.orgId = this.$store.getters.xt_user.org.id;  
438
+      this.orgId = this.$store.getters.xt_user.org.id;
438 439
       this.getDrugOutOrderDetailPrint(order_id)
439 440
     }
440 441
 

+ 1 - 1
src/xt_pages/stock/drugs/inventory.vue Bestand weergeven

@@ -884,7 +884,7 @@ export default {
884 884
          arr[i].last_stock_max_number = parseInt(arr[i].last_stock_max_number)
885 885
          arr[i].last_stock_min_number = parseInt(arr[i].last_stock_min_number)
886 886
 
887
-         
887
+         arr[i].storehouse_id = this.storehouse_id
888 888
        }
889 889
 
890 890
        var params = {

+ 4 - 0
src/xt_pages/stock/drugs/inventoryDetails.vue Bestand weergeven

@@ -27,6 +27,7 @@
27 27
                 >
28 28
             </div>
29 29
             <div>
30
+               <el-button size="small" type="primary" @click="print_1">打印</el-button>
30 31
                <el-button size="small" type="primary" @click="print">盘点模版打印</el-button>
31 32
             </div>
32 33
             <!-- <div>
@@ -141,6 +142,9 @@ export default {
141 142
         print(){
142 143
             this.$router.push({path:'/stock/drugs/inventoryPrint'}) 
143 144
         },
145
+        print_1(){
146
+           this.$router.push({path:'/stock/drugs/print'}) 
147
+        },
144 148
         handleSizeChange(val){
145 149
          this.limit = val
146 150
          this.getlist()

+ 137 - 0
src/xt_pages/stock/drugs/print.vue Bestand weergeven

@@ -0,0 +1,137 @@
1
+<template>
2
+    <div class="main-contain">
3
+        <div class="position">
4
+        <bread-crumb :crumbs="crumbs"></bread-crumb>
5
+        <el-row style="float:right;">
6
+            <el-col :span="24">
7
+            <el-button size="small" icon="el-icon-printer" type="primary" @click="printAction">打印</el-button>
8
+            </el-col>
9
+        </el-row>
10
+        </div>
11
+        <div class="app-container" style="background-color: white;">
12
+            <div id="print_content">
13
+
14
+                <table class="printTable" border="0" cellspacing="0" align="center">
15
+                    <thead class="print_head">
16
+                        <tr><td colspan="11">{{org_name}}</td></tr>
17
+                        <tr><td colspan="11">药品盘点</td></tr>
18
+                    </thead>  
19
+                    <tbody class="print_body">
20
+                    <tr>
21
+                        <td>药品名称</td>
22
+                        <td>规格</td>
23
+                        <td>单位</td>
24
+                        <td>批号</td>
25
+                        <td>生产厂商</td>
26
+                        <td>仓库名称</td>
27
+                        <td>盘点前数量</td> 
28
+                        <td>盘点后数量</td>
29
+                        <td>盈亏类型</td>
30
+                        <td>进货单价</td>
31
+                        <td width="60">总额</td>
32
+                        
33
+                    </tr>
34
+                    <tr v-for="(item,index) in tableData" :key="index">
35
+                        <td>{{item.good_name}}</td>
36
+                        <td>{{item.specification_name}}</td>
37
+                        <td>{{item.packing_unit}}</td>
38
+                        <td>{{item.number}}</td>
39
+                        <td></td>
40
+                        <td></td>
41
+                        <td></td>
42
+                        <td></td>
43
+                        <td></td>
44
+                        <td></td>
45
+                        <td></td>
46
+                    </tr>
47
+                    </tbody>
48
+                </table>
49
+            </div>
50
+        </div>
51
+    </div>
52
+</template>
53
+
54
+<script>
55
+import BreadCrumb from '@/xt_pages/components/bread-crumb'
56
+const moment = require('moment');
57
+import { uParseTime } from '@/utils/tools'
58
+import { getInventoryExportList } from "@/api/stock"
59
+import print from "print-js";
60
+export default {
61
+    components:{
62
+        BreadCrumb
63
+    },
64
+    data(){
65
+        return{
66
+          crumbs: [
67
+            { path: false, name: '库存管理' },
68
+            { path: false, name: '耗材管理' },
69
+            { path: false, name: '耗材盘点打印' },
70
+          ],
71
+          org_name:"",
72
+          ids:"",
73
+          tableData:[],
74
+          manufacturerList:[],
75
+        }
76
+    },
77
+    methods:{
78
+        printAction: function() {
79
+            const style = '@page{size:landscape;margin: 10mm;} @media print { print_content{width:960px;margin:0} .flex{display: flex;justify-content: space-between;} .printTable{width:100%;border-collapse: collapse;border:0px;margin:10px 0;} .printTable thead{text-align:center}.printTable td{padding:5px;} .print_body tr td{border: 1px solid;font-size:12px;border-collapse:collapse;} }';
80
+            printJS({ 
81
+            printable: 'print_content',
82
+            type: 'html',
83
+            documentTitle: '  ',
84
+            style: style,
85
+            scanStyles: false
86
+            })
87
+        },
88
+        getTime(val) {
89
+         if(val < 0){
90
+            return ""
91
+          }
92
+         if(val == ""){
93
+            return ""
94
+          }else {
95
+            return uParseTime(val, '{y}-{m}-{d}')
96
+         }
97
+        },
98
+        getlist(){
99
+         getInventoryExportList().then(response=>{
100
+           if(response.data.state == 1){
101
+             var list =  response.data.data.list
102
+             console.log("list233233232323",list)
103
+             this.tableData = list
104
+             this.manufacturerList = response.data.data.manufacturerList
105
+           }
106
+         })
107
+        },
108
+        getManufacturerName(id){
109
+
110
+           var name = ""
111
+           for(let i=0;i<this.manufacturerList.length;i++){
112
+              if(id == this.manufacturerList[i].id){
113
+                  name = this.manufacturerList[i].manufacturer_name
114
+              }
115
+           }
116
+           return name
117
+        }
118
+    },
119
+    created(){
120
+      this.getlist()
121
+    }
122
+}
123
+</script>
124
+
125
+
126
+<style rel="stylesheet/scss" lang="scss" scoped>
127
+.printTitle{font-size: 22px;text-align: center;}
128
+.flex{display: flex;justify-content: space-between;}
129
+.tableTitle{display: flex;border-top:1px solid #000;border-bottom: 1px solid #000;padding: 10px 0;}
130
+.tableTr{display: flex;border-bottom: 1px dashed #000;padding: 10px 0;}
131
+.tableBottom{display: flex;border-bottom: 1px solid #000;padding: 10px 0;}
132
+.printTable{width:100%;border-collapse: collapse;}
133
+.printTable td{padding:5px;}
134
+.print_head{border: none;display: table-header-group;}
135
+.print_head tr td{text-align: center;border: none;}
136
+.print_body tr td{border:1px solid}
137
+</style>

+ 2 - 1
src/xt_pages/stock/inventory.vue Bestand weergeven

@@ -572,12 +572,13 @@ export default {
572 572
         }else{
573 573
           arr[i].last_stock_count = parseInt(arr[i].last_stock_count)
574 574
         }
575
-        
575
+        arr[i].storehouse_id = this.storehouse_id
576 576
       }
577 577
        var params = {
578 578
          tableData:arr,
579 579
          storehouse_id:this.storehouse_id,
580 580
        }
581
+      console.log("param23323232323232323",params)
581 582
       saveStockInentoryList(params).then(response=>{
582 583
         if(response.data.state == 1){
583 584
            var inventory = response.data.data.inventory

+ 5 - 0
src/xt_pages/stock/inventoryDetails.vue Bestand weergeven

@@ -26,6 +26,7 @@
26 26
                 @click="search">搜索</el-button>
27 27
             </div>
28 28
             <div>
29
+              <el-button type="primary" @click="toprint">打印</el-button>
29 30
               <el-button type="primary" @click="inventoryExportList">盘点模版打印</el-button>
30 31
             </div>
31 32
             <!-- <div>
@@ -128,6 +129,10 @@ export default {
128 129
          }
129 130
     },
130 131
     methods:{
132
+        toprint(){
133
+          this.$router.push({path:'/stock/print_all'})
134
+        },
135
+
131 136
         search(){
132 137
          this.getlist()
133 138
         },

+ 1 - 1
src/xt_pages/stock/inventoryPrint.vue Bestand weergeven

@@ -66,7 +66,7 @@ export default {
66 66
     },
67 67
     methods:{
68 68
         printAction: function() {
69
-            const style = '@media print { .printTitle{font-size: 22px;text-align: center;}.flex{display: flex;justify-content: space-between;}.tableTitle{display: flex;border-top:1px solid #000;border-bottom: 1px solid #000;padding: 10px 0;}.tableTr{display: flex;border-bottom: 1px dashed #000;padding: 10px 0;}.tableBottom{display: flex;border-bottom: 1px solid #000;padding: 10px 0;}.printTable td{padding:5px;} }';
69
+            const style = '@media print { .printTitle{font-size: 22px;text-align: center;}.flex{display: flex;justify-content: space-between;}.tableTitle{display: flex;border-top:1px solid #000;border-bottom: 1px solid #000;padding: 10px 0;}.tableTr{display: flex;border-bottom: 1px dashed #000;padding: 10px 0;}.tableBottom{display: flex;border-bottom: 1px solid #000;padding: 10px 0;}.printTable{width:100%;border-collapse: collapse;}.printTable td{padding:5px;} }';
70 70
             printJS({
71 71
             printable: 'print_content',
72 72
             type: 'html',

+ 136 - 0
src/xt_pages/stock/print_all.vue Bestand weergeven

@@ -0,0 +1,136 @@
1
+<template>
2
+    <div class="main-contain">
3
+        <div class="position">
4
+        <bread-crumb :crumbs="crumbs"></bread-crumb>
5
+        <el-row style="float:right;">
6
+            <el-col :span="24">
7
+            <el-button size="small" icon="el-icon-printer" type="primary" @click="printAction">打印</el-button>
8
+            </el-col>
9
+        </el-row>
10
+        </div>
11
+        <div class="app-container" style="background-color: white;">
12
+            <div id="print_content">
13
+
14
+                <table class="printTable" border="0" cellspacing="0" align="center">
15
+                    <thead class="print_head">
16
+                        <tr><td colspan="11">{{org_name}}</td></tr>
17
+                        <tr><td colspan="11">耗材盘点</td></tr>
18
+                    </thead>
19
+                    <tbody class="print_body">
20
+                    <tr>
21
+                        <td>耗材名称</td>
22
+                        <td>规格</td>
23
+                        <td>单位</td>
24
+                        <td>批号</td>
25
+                        <td>生产厂商</td>
26
+                        <td>仓库名称</td>
27
+                        <td>盘点前数量</td> 
28
+                        <td>盘点后数量</td>
29
+                        <td>盈亏类型</td>
30
+                        <td>进货单价</td>
31
+                        <td width="60">总额</td>
32
+                        
33
+                    </tr>
34
+                    <tr v-for="(item,index) in tableData" :key="index">
35
+                        <td>{{item.good_name}}</td>
36
+                        <td>{{item.specification_name}}</td>
37
+                        <td>{{item.packing_unit}}</td>
38
+                        <td>{{item.number}}</td>
39
+                        <td></td>
40
+                        <td></td>
41
+                        <td></td>
42
+                        <td></td>
43
+                        <td></td>
44
+                        <td></td>
45
+                        <td></td>
46
+                    </tr>
47
+                    </tbody>
48
+                </table>
49
+            </div>
50
+        </div>
51
+    </div>
52
+</template>
53
+
54
+<script>
55
+import BreadCrumb from '@/xt_pages/components/bread-crumb'
56
+const moment = require('moment');
57
+import { uParseTime } from '@/utils/tools'
58
+import { getInventoryExportList } from "@/api/stock"
59
+import print from "print-js";
60
+export default {
61
+    components:{
62
+        BreadCrumb
63
+    },
64
+    data(){
65
+        return{
66
+          crumbs: [
67
+            { path: false, name: '库存管理' },
68
+            { path: false, name: '耗材管理' },
69
+            { path: false, name: '耗材盘点打印' },
70
+          ],
71
+          org_name:"",
72
+          ids:"",
73
+          tableData:[],
74
+          manufacturerList:[],
75
+        }
76
+    },
77
+    methods:{
78
+        printAction: function() {
79
+            const style = '@page{size:landscape;margin: 10mm;} @media print { print_content{width:960px;margin:0} .flex{display: flex;justify-content: space-between;} .printTable{width:100%;border-collapse: collapse;border:0px;margin:10px 0;} .printTable thead{text-align:center}.printTable td{padding:5px;} .print_body tr td{border: 1px solid;font-size:12px;border-collapse:collapse;} }';
80
+            printJS({ 
81
+            printable: 'print_content',
82
+            type: 'html',
83
+            documentTitle: '  ',
84
+            style: style,
85
+            scanStyles: false
86
+            })
87
+        },
88
+        getTime(val) {
89
+         if(val < 0){
90
+            return ""
91
+          }
92
+         if(val == ""){
93
+            return ""
94
+          }else {
95
+            return uParseTime(val, '{y}-{m}-{d}')
96
+         }
97
+        },
98
+        getlist(){
99
+        //  getInventoryExportList().then(response=>{
100
+        //    if(response.data.state == 1){
101
+        //      var list =  response.data.data.list
102
+        //      console.log("list233233232323",list)
103
+        //      this.tableData = list
104
+        //      this.manufacturerList = response.data.data.manufacturerList
105
+        //    }
106
+        //  })
107
+        },
108
+        getManufacturerName(id){
109
+           var name = ""
110
+           for(let i=0;i<this.manufacturerList.length;i++){
111
+              if(id == this.manufacturerList[i].id){
112
+                  name = this.manufacturerList[i].manufacturer_name
113
+              }
114
+           }
115
+           return name
116
+        }
117
+    },
118
+    created(){
119
+      this.getlist()
120
+    }
121
+}
122
+</script>
123
+
124
+
125
+<style rel="stylesheet/scss" lang="scss" scoped>
126
+.printTitle{font-size: 22px;text-align: center;}
127
+.flex{display: flex;justify-content: space-between;}
128
+.tableTitle{display: flex;border-top:1px solid #000;border-bottom: 1px solid #000;padding: 10px 0;}
129
+.tableTr{display: flex;border-bottom: 1px dashed #000;padding: 10px 0;}
130
+.tableBottom{display: flex;border-bottom: 1px solid #000;padding: 10px 0;}
131
+.printTable{width:100%;border-collapse: collapse;}
132
+.printTable td{padding:5px;}
133
+.print_head{border: none;display: table-header-group;}
134
+.print_head tr td{text-align: center;border: none;}
135
+.print_body tr td{border:1px solid}
136
+</style>

+ 51 - 4
src/xt_pages/stock/stockInOrder.vue Bestand weergeven

@@ -71,6 +71,24 @@
71 71
             @change="endTimeChange"
72 72
           ></el-date-picker>
73 73
         </div>
74
+        <!-- <div style="margin-left: 10px">
75
+          <span>审核状态:</span>
76
+          <el-select
77
+            v-model="check_id"
78
+            style="width: 140px; margin-right: 10px"
79
+            placeholder="请选择"
80
+            @change="changeTypeName"
81
+          >
82
+            <el-option
83
+              v-for="item in checkList"
84
+              :key="item.id"
85
+              :label="item.name"
86
+              :value="item.id"
87
+            >
88
+            </el-option>
89
+          </el-select>
90
+        </div> -->
91
+
74 92
       </div>
75 93
 
76 94
 
@@ -87,7 +105,7 @@
87 105
         <el-button size="small" type="primary" @click="toPrint">打印</el-button>
88 106
 
89 107
         <el-button size="small" type="primary" @click="toExport">导出</el-button>
90
-         
108
+
91 109
           <span>&nbsp;&nbsp;</span>
92 110
           <label class="title"><span class="name">审核状态</span> :</label>
93 111
           <el-select size="small" v-model="check_type" filterable placeholder="请选择仓库" style="width:200px" @change="changeCheckType">
@@ -97,7 +115,7 @@
97 115
                 :label="option.name"
98 116
                 :value="option.id">
99 117
               </el-option>
100
-          </el-select>  
118
+          </el-select>
101 119
       </div>
102 120
 
103 121
       <el-table
@@ -295,6 +313,11 @@
295 313
             {{ scope.row.license_number}}
296 314
           </template>
297 315
         </el-table-column>
316
+        <el-table-column label="注册编码" align="center">
317
+          <template slot-scope="scope">
318
+            {{ scope.row.register_number}}
319
+          </template>
320
+        </el-table-column>
298 321
         <el-table-column label="备注" align="center">
299 322
           <template slot-scope="scope">
300 323
             {{ scope.row.remark }}
@@ -830,11 +853,35 @@ export default {
830 853
        {id:1,name:"已审核"},
831 854
        {id:2,name:"未审核"},
832 855
       ]
856
+      check_id: 0,
833 857
     };
834 858
 
835 859
 
836 860
   },
837 861
   methods: {
862
+          changeTypeName() {
863
+      this.getlist();
864
+    },
865
+    getlist() {
866
+      var params = {
867
+        check_id: this.check_id,
868
+        start_time: this.start_time,
869
+        end_time: this.end_time,
870
+        keyword: this.keywords,
871
+        page: this.page,
872
+        limit: this.limit,
873
+      };
874
+      getAllSecondOrderList(params).then((response) => {
875
+        if (response.data.state == 1) {
876
+          var list = response.data.data.list;
877
+          this.tableList = list;
878
+          var total = response.data.data.total;
879
+          this.total = total;
880
+          this.houseList = response.data.data.houseList;
881
+          this.doctorList = response.data.data.doctorList;
882
+        }
883
+      });
884
+    },
838 885
     changeCheckType(){
839 886
       this.GetWarehouse()
840 887
     },
@@ -1125,7 +1172,7 @@ export default {
1125 1172
       }
1126 1173
     },
1127 1174
     handleEdit: function(index, row) {
1128
-      
1175
+
1129 1176
       this.$router.push({path:"/stock/in/order/edit?id="+row.id+"&supply_warehouse_id="+row.supply_warehouse_id+"&is_sys="+row.is_sys+"&is_check="+row.is_check+"&type="+row.type})
1130 1177
     },
1131 1178
     handleDelete: function(index, row) {
@@ -1210,7 +1257,7 @@ export default {
1210 1257
         if(this.selectedTableData[i].supply_warehouse_id >0){
1211 1258
           idOne.push(this.selectedTableData[i].supply_warehouse_id)
1212 1259
         }
1213
-       
1260
+
1214 1261
       }
1215 1262
       for(let i=0;i<idOne.length;i++){
1216 1263
         if(idOne[i] >0){

+ 0 - 0
src/xt_pages/stock/stockInOrderAdd.vue Bestand weergeven


Some files were not shown because too many files changed in this diff