浏览代码

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

陈少旭 8 个月前
父节点
当前提交
59a7491839
共有 22 个文件被更改,包括 995 次插入1115 次删除
  1. 32 0
      src/api/qcd.js
  2. 97 97
      src/router/modules/Dialysisanalysis.js
  3. 52 68
      src/xt_pages/Dialysisanalysis/weightblood/components/after_Blood.vue
  4. 72 76
      src/xt_pages/Dialysisanalysis/weightblood/components/before_Blood.vue
  5. 100 219
      src/xt_pages/Dialysisanalysis/weightblood/components/blood_table.vue
  6. 105 95
      src/xt_pages/Dialysisanalysis/weightblood/components/dialyze_after.vue
  7. 105 94
      src/xt_pages/Dialysisanalysis/weightblood/components/dry_denominator.vue
  8. 64 104
      src/xt_pages/Dialysisanalysis/weightblood/components/dry_weight.vue
  9. 109 105
      src/xt_pages/Dialysisanalysis/weightblood/components/list_denominator.vue
  10. 146 217
      src/xt_pages/Dialysisanalysis/weightblood/components/weight_table.vue
  11. 8 7
      src/xt_pages/dialysis/batch_print/batch_print_order_seventynine.vue
  12. 1 1
      src/xt_pages/dialysis/details/dialog/dialysisPrescriptionDialog.vue
  13. 8 4
      src/xt_pages/dialysis/template/DialysisPrintOrderSeventynine.vue
  14. 1 0
      src/xt_pages/dialysis/template/DialysisPrintOrderTwentyFive.vue
  15. 4 1
      src/xt_pages/org/orginfo.vue
  16. 7 3
      src/xt_pages/outpatientCharges/listTemplate/listPrintforu.vue
  17. 10 10
      src/xt_pages/outpatientCharges/statementPrint.vue
  18. 12 2
      src/xt_pages/outpatientCharges/statementTemplate/printOne.vue
  19. 8 2
      src/xt_pages/outpatientDoctorStation/components/deskRecord.vue
  20. 18 0
      src/xt_pages/qcd/basicInformationAnalysis.vue
  21. 32 6
      src/xt_pages/qcd/treatmentControlAnalysis/components/TimePersonal.vue
  22. 4 4
      src/xt_pages/user/components/PatientSidebar.vue

+ 32 - 0
src/api/qcd.js 查看文件

261
     params: params
261
     params: params
262
   })
262
   })
263
 }
263
 }
264
+// 体重分析趋势
265
+export function Getpatinetweight(params) {
266
+  return request({
267
+    url: '/api/commonqc/patinet/weight',
268
+    method: 'get',
269
+    params: params
270
+  })
271
+}
272
+// 体重分析详情
273
+export function Getweightdetail(params) {
274
+  return request({
275
+    url: '/api/commonqc/weight/detail',
276
+    method: 'get',
277
+    params: params
278
+  })
279
+}
280
+// 血压趋势/api/commonqc/patinet/bp
281
+export function Getpatinetbp(params) {
282
+  return request({
283
+    url: '/api/commonqc/patinet/bp',
284
+    method: 'get',
285
+    params: params
286
+  })
287
+}
288
+// 血压分析详情
289
+export function Getbpdetail(params) {
290
+  return request({
291
+    url: '/api/commonqc/bp/detail',
292
+    method: 'get',
293
+    params: params
294
+  })
295
+}

+ 97 - 97
src/router/modules/Dialysisanalysis.js 查看文件

32
         noCache: true
32
         noCache: true
33
       }
33
       }
34
     },
34
     },
35
-    // {//体重血压质控
36
-    //   path: '/Dialysisanalysis/qualitycontrol/weightblood',
37
-    //   component: () => import('@/xt_pages/Dialysisanalysis/weightblood/index'),
38
-    //   name: 'weightblood',
39
-    //   meta: {
40
-    //     title: '体重血压分析',
41
-    //     noCache: true
42
-    //   }
43
-    // },
35
+    {//体重血压质控
36
+      path: '/Dialysisanalysis/qualitycontrol/weightblood',
37
+      component: () => import('@/xt_pages/Dialysisanalysis/weightblood/index'),
38
+      name: 'weightblood',
39
+      meta: {
40
+        title: '体重血压分析',
41
+        noCache: true
42
+      }
43
+    },
44
 
44
 
45
     {//透析总量分析
45
     {//透析总量分析
46
       path: '/Dialysisanalysis/qualitycontrol/new_otherIndicators/Total_analysis',
46
       path: '/Dialysisanalysis/qualitycontrol/new_otherIndicators/Total_analysis',
99
     },
99
     },
100
 
100
 
101
     // 体重血压
101
     // 体重血压
102
-    // {//干体重分析
103
-    //   path: '/Dialysisanalysis/qualitycontrol/weightblood/dry_weight',
104
-    //   component: () => import('@/xt_pages/Dialysisanalysis/weightblood/components/dry_weight'),
105
-    //   name: 'dry_weight',
106
-    //   meta: {
107
-    //     title: '患者干体重分析',
108
-    //     noCache: true
109
-    //   },
110
-    //   hidden: true,
111
-    //   is_menu: false
112
-    // },
113
-    // {//上次透析分母
114
-    //   path: '/Dialysisanalysis/qualitycontrol/weightblood/list_denominator',
115
-    //   component: () => import('@/xt_pages/Dialysisanalysis/weightblood/components/list_denominator'),
116
-    //   name: 'list_denominator',
117
-    //   meta: {
118
-    //     title: '患者体重增长分析(以上次透后体重为分母)',
119
-    //     noCache: true
120
-    //   },
121
-    //   hidden: true,
122
-    //   is_menu: false
123
-    // },
124
-    // {//干体重分母
125
-    //   path: '/Dialysisanalysis/qualitycontrol/weightblood/dry_denominator',
126
-    //   component: () => import('@/xt_pages/Dialysisanalysis/weightblood/components/dry_denominator'),
127
-    //   name: 'dry_denominator',
128
-    //   meta: {
129
-    //     title: '患者体重增长分析(以干体重为分母)',
130
-    //     noCache: true
131
-    //   },
132
-    //   hidden: true,
133
-    //   is_menu: false
134
-    // },
135
-    // {//患者透后体重分析
136
-    //   path: '/Dialysisanalysis/qualitycontrol/weightblood/dialyze_after',
137
-    //   component: () => import('@/xt_pages/Dialysisanalysis/weightblood/components/dialyze_after'),
138
-    //   name: 'dialyze_after',
139
-    //   meta: {
140
-    //     title: '患者透后体重分析',
141
-    //     noCache: true
142
-    //   },
143
-    //   hidden: true,
144
-    //   is_menu: false
145
-    // },
146
-    // {//患者体重详情
147
-    //   path: '/Dialysisanalysis/qualitycontrol/weightblood/weight_table',
148
-    //   component: () => import('@/xt_pages/Dialysisanalysis/weightblood/components/weight_table'),
149
-    //   name: 'weight_table',
150
-    //   meta: {
151
-    //     title: '患者体重详情',
152
-    //     noCache: true
153
-    //   },
154
-    //   hidden: true,
155
-    //   is_menu: false
156
-    // },
157
-    // {//透前血压分析
158
-    //   path: '/Dialysisanalysis/qualitycontrol/weightblood/before_Blood',
159
-    //   component: () => import('@/xt_pages/Dialysisanalysis/weightblood/components/before_Blood'),
160
-    //   name: 'before_Blood',
161
-    //   meta: {
162
-    //     title: '透前血压分析',
163
-    //     noCache: true
164
-    //   },
165
-    //   hidden: true,
166
-    //   is_menu: false
167
-    // },
168
-    // {//透前血压分析
169
-    //   path: '/Dialysisanalysis/qualitycontrol/weightblood/after_Blood',
170
-    //   component: () => import('@/xt_pages/Dialysisanalysis/weightblood/components/after_Blood'),
171
-    //   name: 'after_Blood',
172
-    //   meta: {
173
-    //     title: '透后血压分析',
174
-    //     noCache: true
175
-    //   },
176
-    //   hidden: true,
177
-    //   is_menu: false
178
-    // },
179
-    // {//患者血压详情
180
-    //   path: '/Dialysisanalysis/qualitycontrol/weightblood/blood_table',
181
-    //   component: () => import('@/xt_pages/Dialysisanalysis/weightblood/components/blood_table'),
182
-    //   name: 'blood_table',
183
-    //   meta: {
184
-    //     title: '透后血压分析',
185
-    //     noCache: true
186
-    //   },
187
-    //   hidden: true,
188
-    //   is_menu: false
189
-    // },
102
+    {//干体重分析
103
+      path: '/Dialysisanalysis/qualitycontrol/weightblood/dry_weight',
104
+      component: () => import('@/xt_pages/Dialysisanalysis/weightblood/components/dry_weight'),
105
+      name: 'dry_weight',
106
+      meta: {
107
+        title: '患者干体重分析',
108
+        noCache: true
109
+      },
110
+      hidden: true,
111
+      is_menu: false
112
+    },
113
+    {//上次透析分母
114
+      path: '/Dialysisanalysis/qualitycontrol/weightblood/list_denominator',
115
+      component: () => import('@/xt_pages/Dialysisanalysis/weightblood/components/list_denominator'),
116
+      name: 'list_denominator',
117
+      meta: {
118
+        title: '患者体重增长分析(以上次透后体重为分母)',
119
+        noCache: true
120
+      },
121
+      hidden: true,
122
+      is_menu: false
123
+    },
124
+    {//干体重分母
125
+      path: '/Dialysisanalysis/qualitycontrol/weightblood/dry_denominator',
126
+      component: () => import('@/xt_pages/Dialysisanalysis/weightblood/components/dry_denominator'),
127
+      name: 'dry_denominator',
128
+      meta: {
129
+        title: '患者体重增长分析(以干体重为分母)',
130
+        noCache: true
131
+      },
132
+      hidden: true,
133
+      is_menu: false
134
+    },
135
+    {//患者透后体重分析
136
+      path: '/Dialysisanalysis/qualitycontrol/weightblood/dialyze_after',
137
+      component: () => import('@/xt_pages/Dialysisanalysis/weightblood/components/dialyze_after'),
138
+      name: 'dialyze_after',
139
+      meta: {
140
+        title: '患者透后体重分析',
141
+        noCache: true
142
+      },
143
+      hidden: true,
144
+      is_menu: false
145
+    },
146
+    {//患者体重详情
147
+      path: '/Dialysisanalysis/qualitycontrol/weightblood/weight_table',
148
+      component: () => import('@/xt_pages/Dialysisanalysis/weightblood/components/weight_table'),
149
+      name: 'weight_table',
150
+      meta: {
151
+        title: '患者体重详情',
152
+        noCache: true
153
+      },
154
+      hidden: true,
155
+      is_menu: false
156
+    },
157
+    {//透前血压分析
158
+      path: '/Dialysisanalysis/qualitycontrol/weightblood/before_Blood',
159
+      component: () => import('@/xt_pages/Dialysisanalysis/weightblood/components/before_Blood'),
160
+      name: 'before_Blood',
161
+      meta: {
162
+        title: '透前血压分析',
163
+        noCache: true
164
+      },
165
+      hidden: true,
166
+      is_menu: false
167
+    },
168
+    {//透前血压分析
169
+      path: '/Dialysisanalysis/qualitycontrol/weightblood/after_Blood',
170
+      component: () => import('@/xt_pages/Dialysisanalysis/weightblood/components/after_Blood'),
171
+      name: 'after_Blood',
172
+      meta: {
173
+        title: '透后血压分析',
174
+        noCache: true
175
+      },
176
+      hidden: true,
177
+      is_menu: false
178
+    },
179
+    {//患者血压详情
180
+      path: '/Dialysisanalysis/qualitycontrol/weightblood/blood_table',
181
+      component: () => import('@/xt_pages/Dialysisanalysis/weightblood/components/blood_table'),
182
+      name: 'blood_table',
183
+      meta: {
184
+        title: '透后血压分析',
185
+        noCache: true
186
+      },
187
+      hidden: true,
188
+      is_menu: false
189
+    },
190
 
190
 
191
 
191
 
192
 
192
 

+ 52 - 68
src/xt_pages/Dialysisanalysis/weightblood/components/after_Blood.vue 查看文件

154
                 width="">
154
                 width="">
155
               </el-table-column>
155
               </el-table-column>
156
               <el-table-column
156
               <el-table-column
157
-                prop="dialysis_date"
157
+                prop="PostDialysisBP"
158
                 label="透后血压"
158
                 label="透后血压"
159
                 width="">
159
                 width="">
160
               </el-table-column>
160
               </el-table-column>
184
 import * as echarts from 'echarts';
184
 import * as echarts from 'echarts';
185
 import XLSX from 'xlsx';
185
 import XLSX from 'xlsx';
186
 import { uParseTime } from "@/utils/tools";
186
 import { uParseTime } from "@/utils/tools";
187
-import {Getdialysistreatfinish,Getdialysistreatdetail} from '../../../../api/qcd'
187
+import {Getpatinetbp,Getbpdetail} from '../../../../api/qcd'
188
 import {getAllNurseList} from '@/api/fallassement'
188
 import {getAllNurseList} from '@/api/fallassement'
189
 import { getAllDoctorList} from "@/api/device"
189
 import { getAllDoctorList} from "@/api/device"
190
 import html2canvas from "html2canvas"
190
 import html2canvas from "html2canvas"
205
         limit:50,
205
         limit:50,
206
         total:0,
206
         total:0,
207
         tableData:[],
207
         tableData:[],
208
-        // status_options:[],
209
         nurseList:[],
208
         nurseList:[],
210
         operators:[],
209
         operators:[],
211
         docList:[],
210
         docList:[],
212
-        status_options:[{value:1,label:'达到透析处方时间'},{value:2,label:'超出处方时间'},{value:3,label:'未到达处方时间'}],
213
-        // status_options:[{value:1,label:'待定卧床'},{value:2,label:'<40KG'},{value:3,label:'40-50KG'},
214
-        //                 {value:4,label:'50-60KG'},{value:5,label:'<60-70KG'},{value:6,label:'>70KG'}
215
-        //                 ],
211
+        status_options:[],
212
+
216
         date_options:[{value:1,label:'最近七天'},{value:2,label:'本周'},{value:3,label:'上周'},{value:4,label:'本月'},
213
         date_options:[{value:1,label:'最近七天'},{value:2,label:'本周'},{value:3,label:'上周'},{value:4,label:'本月'},
217
                       {value:5,label:'上月'},{value:6,label:'本年'},{value:7,label:'上一年'}
214
                       {value:5,label:'上月'},{value:6,label:'本年'},{value:7,label:'上一年'}
218
         ],
215
         ],
219
-        mode_options:[{ id: 1, name: 'HD' },{ id: 2, name: 'HDF' },{ id: 3, name: 'HD + HP' },{ id: 4, name: 'HP' },
220
-          { id: 5, name: 'HF' },{ id: 6, name: 'SCUF' },{ id: 7, name: 'IUF' },{ id: 8, name: 'HFHD' },{ id: 9, name: 'HFHD+HP' },
221
-          { id: 10, name: 'PHF' },{ id: 11, name: 'HFR' },{ id: 12, name: 'HDF+HP' },{ id: 13, name: 'CRRT' },{ id: 14, name: '腹水回输' },
222
-          { id: 15, name: 'HD前置换' },{ id: 16, name: 'HD后置换' },{ id: 17, name: 'HDF前置换' },{ id: 18, name: 'HDF后置换' },
223
-          { id:19, name:"IUF+HD"},{ id:20, name:"UF"},{ id:21, name:"HD+"},{ id:22, name:"血浆胆红素吸附+HDF"},{ id:23, name:"血浆胆红素吸附"},
224
-          { id:24, name:"I-HDF"},{ id:25, name:"HD高通"},{ id:26, name:"CVVH"},{ id:27, name:"CVVHD"},{ id:28, name:"CVVHDF"},{ id:29, name:"PE"},
225
-        ],
226
         date_mode_options:[{value:1,label:'按周'},{value:2,label:'按天'},{value:3,label:'按月'},{value:4,label:'按年'}],
216
         date_mode_options:[{value:1,label:'按周'},{value:2,label:'按天'},{value:3,label:'按月'},{value:4,label:'按年'}],
227
         source_options:[{value:1,label:'以开始透析为准'},{value:2,label:'以排班为准'}],
217
         source_options:[{value:1,label:'以开始透析为准'},{value:2,label:'以排班为准'}],
228
         status_id:"",
218
         status_id:"",
238
         var chartDom = document.getElementById('mychart')
228
         var chartDom = document.getElementById('mychart')
239
         var myChart = echarts.init(chartDom);
229
         var myChart = echarts.init(chartDom);
240
         const params={
230
         const params={
241
-          start_date:this.start_date,
242
-          end_date:this.end_date
231
+          start_time:this.start_date,
232
+          end_time:this.end_date,
233
+          statistics_type:1
243
         }
234
         }
244
-        Getdialysistreatfinish(params).then(response =>{
235
+        Getpatinetbp(params).then(response =>{
245
           if(response.data.state ==1){
236
           if(response.data.state ==1){
246
-            const list = response.data.data.data
237
+            const list = response.data.data.list
247
             const xAxis = []
238
             const xAxis = []
248
             const yAxis = []
239
             const yAxis = []
249
-
250
-            const total = response.data.data.total
240
+            var option = []
241
+            var total =0
251
             for(let key in list){
242
             for(let key in list){
252
               const obj={
243
               const obj={
253
-                name:key,
254
-                value:list[key]
244
+                name:list[key].name,
245
+                value:list[key].total
255
               }
246
               }
256
               xAxis.push(obj)
247
               xAxis.push(obj)
257
-              yAxis.push(key)
248
+              yAxis.push(list[key].name)
249
+              total = total + list[key].total
250
+              const obj2 ={
251
+                value:(key*1)+1,
252
+                label:list[key].name
253
+              }
254
+              option.push(obj2)
258
             }
255
             }
259
-            const status = []
260
-            // for(let i in yAxis){
261
-            //   const obj ={
262
-            //     value:(i*1)+1,
263
-            //     label:yAxis[i]
264
-            //   }
265
-            //   status.push(obj)
266
-            // }
267
-            // this.status_options = status
268
-            console.log('this.status_options',this.status_options);
256
+            this.status_options = option
257
+            console.log('this.status_options',response.data.data);
269
             const option = {
258
             const option = {
270
                 title:{
259
                 title:{
271
                   text:'总数'+total,
260
                   text:'总数'+total,
327
             myChart.on('click',params =>{
316
             myChart.on('click',params =>{
328
               this.complete_dialog = true
317
               this.complete_dialog = true
329
               console.log('bbbb',params);
318
               console.log('bbbb',params);
330
-              var status_id =''
319
+
331
               for(let i in this.status_options){
320
               for(let i in this.status_options){
332
                 if(params.data.name == this.status_options[i].label){
321
                 if(params.data.name == this.status_options[i].label){
333
-                  status_id = this.status_options[i].value
322
+                  this.status_value = this.status_options[i].value
334
                 }
323
                 }
335
               }
324
               }
336
-              this.getdetail(status_id)
325
+              this.getdetail(this.status_value)
337
             })
326
             })
338
           }
327
           }
339
         })
328
         })
376
       // 导出excel
365
       // 导出excel
377
       derive_click(){
366
       derive_click(){
378
         let tableData = [
367
         let tableData = [
379
-          ['序号', '透析号', '患者姓名', '年龄','透析日期', '处方透析时长', '实际透析时长', '实际差(min)', '主治医生', '主治护士']//导出表头
368
+          ['序号', '透析号', '患者姓名', '年龄','透析日期', '透后血压']//导出表头
380
         ]
369
         ]
381
         this.tableData.forEach((item,index) =>{
370
         this.tableData.forEach((item,index) =>{
382
           let rowdata=[]
371
           let rowdata=[]
386
             item.patient_name,
375
             item.patient_name,
387
             item.age,
376
             item.age,
388
             item.dialysis_date,
377
             item.dialysis_date,
389
-            item.dialysis_duration,
390
-            item.actual_duration,
391
-            item.diff,
392
-            item.doctor,
393
-            item.nurse,
378
+            item.PostDialysisBP
379
+
394
           ]
380
           ]
395
           tableData.push(rowdata)
381
           tableData.push(rowdata)
396
         })
382
         })
397
         let workSheet = XLSX.utils.aoa_to_sheet(tableData);
383
         let workSheet = XLSX.utils.aoa_to_sheet(tableData);
398
         let bookNew = XLSX.utils.book_new();
384
         let bookNew = XLSX.utils.book_new();
399
-        XLSX.utils.book_append_sheet(bookNew, workSheet, '透析治疗完成率') // 工作簿名称
400
-        let name = '透析治疗完成率'+ '.xlsx'
385
+        XLSX.utils.book_append_sheet(bookNew, workSheet, '患者后血压分析') // 工作簿名称
386
+        let name = '患者后血压分析'+ '.xlsx'
401
         XLSX.writeFile(bookNew, name) // 保存的文件名
387
         XLSX.writeFile(bookNew, name) // 保存的文件名
402
       },
388
       },
403
       // 详情数据源
389
       // 详情数据源
404
-      getdetail(mode){
390
+      getdetail(value){
405
         const params ={
391
         const params ={
406
-          start_date:this.start_date,
407
-          end_date:this.end_date,
408
-          mode:mode,
392
+          start_time:this.start_date,
393
+          end_time:this.end_date,
394
+          status_type:value,
409
           page:this.currentPage,
395
           page:this.currentPage,
410
           limit:this.limit,
396
           limit:this.limit,
411
         }
397
         }
412
-        Getdialysistreatdetail(params).then(response =>{
413
-          if(response.data.state){
398
+        Getbpdetail(params).then(response =>{
399
+          if(response.data.state ==1){
414
             const list = response.data.data.list
400
             const list = response.data.data.list
415
             const xAxis = []
401
             const xAxis = []
416
             const table = []
402
             const table = []
417
-            list.forEach((item,index) =>{
418
-              const obj={
419
-                index:index+1,
420
-                dialysis_no:item.dialysis_no,
421
-                patient_name:item.patient_name,
422
-                age:this.analyzeIDCard(item.id_card_no),
423
-                dialysis_date:item.dialysis_date.split('T')[0],
424
-                dialysis_duration:item.dialysis_duration,
425
-                actual_duration:item.actual_duration,
426
-                diff:item.diff,
427
-                doctor:this.getdoctor(item.doctor),
428
-                nurse:this.getnurse(item.nurse)
429
-              }
430
-              table.push(obj)
431
-            })
432
-            this.tableData = table
433
-            this.total = response.data.data.total
403
+            if(list.length > 0){
404
+              list.forEach((item,index) =>{
405
+                const obj={
406
+                  index:index+1,
407
+                  dialysis_no:item.dialysis_no,
408
+                  patient_name:item.patient_name,
409
+                  age:item.age,
410
+                  dialysis_date:this.getTime(item.assessment_date),
411
+                  PostDialysisBP:item.post_dialysis_bp,
412
+                }
413
+                table.push(obj)
414
+              })
415
+              this.tableData = table
416
+              this.total = response.data.data.total
417
+            }
434
           }
418
           }
435
-          console.log('55555',response);
419
+          console.log('55555透后',response);
436
         })
420
         })
437
       },
421
       },
438
       // 选择日期
422
       // 选择日期

+ 72 - 76
src/xt_pages/Dialysisanalysis/weightblood/components/before_Blood.vue 查看文件

154
                 width="">
154
                 width="">
155
               </el-table-column>
155
               </el-table-column>
156
               <el-table-column
156
               <el-table-column
157
-                prop="dialysis_date"
157
+                prop="PreDialysisBP"
158
                 label="透前血压"
158
                 label="透前血压"
159
                 width="">
159
                 width="">
160
               </el-table-column>
160
               </el-table-column>
184
 import * as echarts from 'echarts';
184
 import * as echarts from 'echarts';
185
 import XLSX from 'xlsx';
185
 import XLSX from 'xlsx';
186
 import { uParseTime } from "@/utils/tools";
186
 import { uParseTime } from "@/utils/tools";
187
-import {Getdialysistreatfinish,Getdialysistreatdetail} from '../../../../api/qcd'
188
-import {getAllNurseList} from '@/api/fallassement'
187
+import {Getpatinetbp,Getbpdetail} from '../../../../api/qcd'
188
+// import {getAllNurseList} from '@/api/fallassement'
189
 import { getAllDoctorList} from "@/api/device"
189
 import { getAllDoctorList} from "@/api/device"
190
 import html2canvas from "html2canvas"
190
 import html2canvas from "html2canvas"
191
   export default {
191
   export default {
238
         var chartDom = document.getElementById('mychart')
238
         var chartDom = document.getElementById('mychart')
239
         var myChart = echarts.init(chartDom);
239
         var myChart = echarts.init(chartDom);
240
         const params={
240
         const params={
241
-          start_date:this.start_date,
242
-          end_date:this.end_date
241
+          start_time:this.start_date,
242
+          end_time:this.end_date,
243
+          statistics_type:1
243
         }
244
         }
244
-        Getdialysistreatfinish(params).then(response =>{
245
+        Getpatinetbp(params).then(response =>{
245
           if(response.data.state ==1){
246
           if(response.data.state ==1){
246
-            const list = response.data.data.data
247
+            const list = response.data.data.list
247
             const xAxis = []
248
             const xAxis = []
248
             const yAxis = []
249
             const yAxis = []
249
-
250
-            const total = response.data.data.total
250
+            var option = []
251
+            var total =0
251
             for(let key in list){
252
             for(let key in list){
252
               const obj={
253
               const obj={
253
-                name:key,
254
-                value:list[key]
254
+                name:list[key].name,
255
+                value:list[key].total
255
               }
256
               }
256
               xAxis.push(obj)
257
               xAxis.push(obj)
257
-              yAxis.push(key)
258
+              yAxis.push(list[key].name)
259
+              total = total + list[key].total
260
+              const obj2 ={
261
+                value:(key*1)+1,
262
+                label:list[key].name
263
+              }
264
+              option.push(obj2)
258
             }
265
             }
259
-            const status = []
260
-            // for(let i in yAxis){
261
-            //   const obj ={
262
-            //     value:(i*1)+1,
263
-            //     label:yAxis[i]
264
-            //   }
265
-            //   status.push(obj)
266
-            // }
267
-            // this.status_options = status
268
-            console.log('this.status_options',this.status_options);
266
+            this.status_options = option
267
+            console.log('this.status_options血1压1',response.data.data);
269
             const option = {
268
             const option = {
270
                 title:{
269
                 title:{
271
                   text:'总数'+total,
270
                   text:'总数'+total,
327
             myChart.on('click',params =>{
326
             myChart.on('click',params =>{
328
               this.complete_dialog = true
327
               this.complete_dialog = true
329
               console.log('bbbb',params);
328
               console.log('bbbb',params);
330
-              var status_id =''
331
               for(let i in this.status_options){
329
               for(let i in this.status_options){
332
                 if(params.data.name == this.status_options[i].label){
330
                 if(params.data.name == this.status_options[i].label){
333
-                  status_id = this.status_options[i].value
331
+                  this.status_value = this.status_options[i].value
334
                 }
332
                 }
335
               }
333
               }
336
-              this.getdetail(status_id)
334
+              this.getdetail(this.status_value)
337
             })
335
             })
338
           }
336
           }
339
         })
337
         })
376
       // 导出excel
374
       // 导出excel
377
       derive_click(){
375
       derive_click(){
378
         let tableData = [
376
         let tableData = [
379
-          ['序号', '透析号', '患者姓名', '年龄','透析日期', '处方透析时长', '实际透析时长', '实际差(min)', '主治医生', '主治护士']//导出表头
377
+          ['序号', '透析号', '患者姓名', '年龄','透析日期', '透前血压']//导出表头
380
         ]
378
         ]
381
         this.tableData.forEach((item,index) =>{
379
         this.tableData.forEach((item,index) =>{
382
           let rowdata=[]
380
           let rowdata=[]
386
             item.patient_name,
384
             item.patient_name,
387
             item.age,
385
             item.age,
388
             item.dialysis_date,
386
             item.dialysis_date,
389
-            item.dialysis_duration,
390
-            item.actual_duration,
391
-            item.diff,
392
-            item.doctor,
393
-            item.nurse,
387
+            item.PreDialysisBP
394
           ]
388
           ]
395
           tableData.push(rowdata)
389
           tableData.push(rowdata)
396
         })
390
         })
397
         let workSheet = XLSX.utils.aoa_to_sheet(tableData);
391
         let workSheet = XLSX.utils.aoa_to_sheet(tableData);
398
         let bookNew = XLSX.utils.book_new();
392
         let bookNew = XLSX.utils.book_new();
399
-        XLSX.utils.book_append_sheet(bookNew, workSheet, '透析治疗完成率') // 工作簿名称
400
-        let name = '透析治疗完成率'+ '.xlsx'
393
+        XLSX.utils.book_append_sheet(bookNew, workSheet, '患者前血压分析') // 工作簿名称
394
+        let name = '患者前血压分析'+ '.xlsx'
401
         XLSX.writeFile(bookNew, name) // 保存的文件名
395
         XLSX.writeFile(bookNew, name) // 保存的文件名
402
       },
396
       },
403
       // 详情数据源
397
       // 详情数据源
404
-      getdetail(mode){
398
+      getdetail(blood){
405
         const params ={
399
         const params ={
406
-          start_date:this.start_date,
407
-          end_date:this.end_date,
408
-          mode:mode,
400
+          start_time:this.start_date,
401
+          end_time:this.end_date,
402
+          status_type:blood,
409
           page:this.currentPage,
403
           page:this.currentPage,
410
           limit:this.limit,
404
           limit:this.limit,
411
         }
405
         }
412
-        Getdialysistreatdetail(params).then(response =>{
406
+        Getbpdetail(params).then(response =>{
407
+          console.log('Getbpdetail血压',response.data);
413
           if(response.data.state){
408
           if(response.data.state){
414
             const list = response.data.data.list
409
             const list = response.data.data.list
415
             const xAxis = []
410
             const xAxis = []
416
             const table = []
411
             const table = []
417
-            list.forEach((item,index) =>{
418
-              const obj={
419
-                index:index+1,
420
-                dialysis_no:item.dialysis_no,
421
-                patient_name:item.patient_name,
422
-                age:this.analyzeIDCard(item.id_card_no),
423
-                dialysis_date:item.dialysis_date.split('T')[0],
424
-                dialysis_duration:item.dialysis_duration,
425
-                actual_duration:item.actual_duration,
426
-                diff:item.diff,
427
-                doctor:this.getdoctor(item.doctor),
428
-                nurse:this.getnurse(item.nurse)
429
-              }
430
-              table.push(obj)
431
-            })
432
-            this.tableData = table
433
-            this.total = response.data.data.total
412
+            if(list.length >0){
413
+              list.forEach((item,index) =>{
414
+                const obj={
415
+                  index:index+1,
416
+                  dialysis_no:item.dialysis_no,
417
+                  patient_name:item.patient_name,
418
+                  age:item.age,
419
+                  dialysis_date:this.getTime(item.assessment_date),
420
+                  PreDialysisBP:item.pre_dialysis_bp,
421
+
422
+                }
423
+                table.push(obj)
424
+              })
425
+              this.tableData = table
426
+              this.total = response.data.data.total
427
+            }
434
           }
428
           }
435
           console.log('55555',response);
429
           console.log('55555',response);
436
         })
430
         })
665
 
659
 
666
       },
660
       },
667
       // 护士
661
       // 护士
668
-      getAllNurseList(){
669
-        getAllNurseList().then(response=>{
670
-           if(response.data.state ==1){
671
-             var nurseList  = response.data.data.nurseList
672
-            console.log('0000',nurseList);
673
-             this.nurseList =nurseList
674
-           }
675
-        })
676
-      },
662
+      // getAllNurseList(){
663
+      //   getAllNurseList().then(response=>{
664
+      //      if(response.data.state ==1){
665
+      //        var nurseList  = response.data.data.nurseList
666
+      //       console.log('0000',nurseList);
667
+      //        this.nurseList =nurseList
668
+      //      }
669
+      //   })
670
+      // },
677
       // 医生
671
       // 医生
678
-      getAllDoctorList(){
679
-        getAllDoctorList().then(response=>{
680
-          if(response.data.state == 1){
681
-              var list = response.data.data.list
682
-              console.log("list222222",list)
683
-              this.docList = list
684
-              this.operators = response.data.data.operators
685
-          }
686
-        })
687
-      },
672
+      // getAllDoctorList(){
673
+      //   getAllDoctorList().then(response=>{
674
+      //     if(response.data.state == 1){
675
+      //         var list = response.data.data.list
676
+      //         console.log("list222222",list)
677
+      //         this.docList = list
678
+      //         this.operators = response.data.data.operators
679
+      //     }
680
+      //   })
681
+      // },
688
       getnurse(ids){
682
       getnurse(ids){
689
         const nurse = this.nurseList
683
         const nurse = this.nurseList
690
         for(let i in nurse){
684
         for(let i in nurse){
704
     },
698
     },
705
     mounted(){
699
     mounted(){
706
       this.getecharts()
700
       this.getecharts()
701
+      // this.getdetail()
707
     },
702
     },
708
     created(){
703
     created(){
709
       this.start_date = this.getFirstDayOfMonth(new Date())
704
       this.start_date = this.getFirstDayOfMonth(new Date())
710
-      this.getAllNurseList()
711
-      this.getAllDoctorList()
705
+      // this.getAllNurseList()
706
+      // this.getAllDoctorList()
707
+      // this.getdetail()
712
     },
708
     },
713
 
709
 
714
   }
710
   }

+ 100 - 219
src/xt_pages/Dialysisanalysis/weightblood/components/blood_table.vue 查看文件

41
               </el-date-picker>
41
               </el-date-picker>
42
             </div>
42
             </div>
43
             <div>
43
             <div>
44
-              体重增长:
45
-              <el-select v-model="dialyze_value" placeholder="请选择" style="width: 100px;">
44
+              状态:
45
+              <el-select v-model="status_value" placeholder="请选择" style="width: 100px;">
46
                 <el-option :key="0" label="不限" :value="0"></el-option>
46
                 <el-option :key="0" label="不限" :value="0"></el-option>
47
                 <el-option
47
                 <el-option
48
-                  v-for="item in dialyze_options"
49
-                  :key="item.id"
50
-                  :label="item.name"
51
-                  :value="item.id">
48
+                  v-for="item in status_options"
49
+                  :key="item.value"
50
+                  :label="item.label"
51
+                  :value="item.value">
52
                 </el-option>
52
                 </el-option>
53
               </el-select>
53
               </el-select>
54
             </div>
54
             </div>
55
-            
55
+
56
           </div>
56
           </div>
57
           <div style="flex: 1;">
57
           <div style="flex: 1;">
58
             <div>
58
             <div>
69
           <el-table-column
69
           <el-table-column
70
             prop="index"
70
             prop="index"
71
             label="序号"
71
             label="序号"
72
-            width="">
72
+            width="50">
73
           </el-table-column>
73
           </el-table-column>
74
           <el-table-column
74
           <el-table-column
75
             prop="dialysis_no"
75
             prop="dialysis_no"
76
             label="透析号"
76
             label="透析号"
77
-            width="">
77
+            width="70">
78
           </el-table-column>
78
           </el-table-column>
79
           <el-table-column
79
           <el-table-column
80
-            prop="name"
81
-            label="患者姓名">
80
+            prop="patient_name"
81
+            label="患者姓名"
82
+            width="80">
82
           </el-table-column>
83
           </el-table-column>
83
           <el-table-column
84
           <el-table-column
84
-            prop="name"
85
+            prop="gender"
85
             label="性别"
86
             label="性别"
86
-            width="">
87
+            width="50">
87
           </el-table-column>
88
           </el-table-column>
88
           <el-table-column
89
           <el-table-column
89
-            prop="name"
90
+            prop="age"
90
             label="年龄"
91
             label="年龄"
91
-            width="">
92
+            width="50">
92
           </el-table-column>
93
           </el-table-column>
93
           <el-table-column
94
           <el-table-column
94
-            prop="date"
95
+            prop="dialysis_date"
95
             label="透析日期"
96
             label="透析日期"
96
-            width="">
97
+            width="100">
97
           </el-table-column>
98
           </el-table-column>
98
           <el-table-column
99
           <el-table-column
99
-            prop="mode_name"
100
+            prop="dryweight"
100
             label="干体重"
101
             label="干体重"
101
-            width="">
102
+            width="70">
102
           </el-table-column>
103
           </el-table-column>
103
           <el-table-column
104
           <el-table-column
104
-            prop="dialyszers"
105
-            label="超滤总量(L)">
105
+            prop="UltrafiltrationVol"
106
+            label="超滤总量(L)"
107
+            width="90">
106
           </el-table-column>
108
           </el-table-column>
107
           <el-table-column
109
           <el-table-column
108
-            prop="date"
110
+            prop="actual_ultrafiltration"
109
             label="实际超滤量(ml)"
111
             label="实际超滤量(ml)"
110
-            width="">
112
+            width="100">
111
           </el-table-column>
113
           </el-table-column>
112
           <el-table-column
114
           <el-table-column
113
-            prop="mode_name"
114
-            label="超滤"
115
-            width="">
115
+            prop="ultrafiltration_rate"
116
+            label="超滤"
117
+            width="70">
116
           </el-table-column>
118
           </el-table-column>
117
           <el-table-column
119
           <el-table-column
118
-            prop="dialyszers"
119
-            label="透前血压">
120
+            prop="preDialysisBP"
121
+            label="透前血压"
122
+            width="90">
120
           </el-table-column>
123
           </el-table-column>
121
           <el-table-column
124
           <el-table-column
122
-            prop="dialyszers"
125
+            prop="monitoringbp"
123
             label="监测记录血压">
126
             label="监测记录血压">
124
           </el-table-column>
127
           </el-table-column>
125
           <el-table-column
128
           <el-table-column
126
-            prop="dialyszers"
127
-            label="透后血压">
129
+            prop="PostDialysisBP"
130
+            label="透后血压"
131
+            width="90">
128
           </el-table-column>
132
           </el-table-column>
129
         </el-table>
133
         </el-table>
130
         <div style="text-align: right;margin-top: 10px;">
134
         <div style="text-align: right;margin-top: 10px;">
142
     </div>
146
     </div>
143
 
147
 
144
     <!-- 弹窗 -->
148
     <!-- 弹窗 -->
145
-   
149
+
146
   </div>
150
   </div>
147
 </template>
151
 </template>
148
 <script>
152
 <script>
149
 import * as echarts from 'echarts';
153
 import * as echarts from 'echarts';
150
 import XLSX from 'xlsx';
154
 import XLSX from 'xlsx';
151
 import { uParseTime } from "@/utils/tools";
155
 import { uParseTime } from "@/utils/tools";
152
-import {Getdialyzer,Getdialyzerdetail,Getdialyzerconfig} from '../../../../api/qcd'
156
+import {Getbpdetail} from '../../../../api/qcd'
153
 import { forEach } from 'jszip';
157
 import { forEach } from 'jszip';
154
 import html2canvas from "html2canvas"
158
 import html2canvas from "html2canvas"
155
   export default {
159
   export default {
169
         limit:50,
173
         limit:50,
170
         total:0,
174
         total:0,
171
         tableData:[],
175
         tableData:[],
172
-        dialyze_options:[],
176
+        status_value:1,
177
+        status_options:[{value:1,label:'达标'},{value:2,label:'不达标'}],
173
         date_options:[{value:1,label:'最近七天'},{value:2,label:'本周'},{value:3,label:'上周'},{value:4,label:'本月'},
178
         date_options:[{value:1,label:'最近七天'},{value:2,label:'本周'},{value:3,label:'上周'},{value:4,label:'本月'},
174
                       {value:5,label:'上月'},{value:6,label:'本年'},{value:7,label:'上一年'}
179
                       {value:5,label:'上月'},{value:6,label:'本年'},{value:7,label:'上一年'}
175
         ],
180
         ],
176
-        modearr:[{ id: 1, name: 'HD' },{ id: 2, name: 'HDF' },{ id: 3, name: 'HD + HP' },{ id: 4, name: 'HP' },
177
-          { id: 5, name: 'HF' },{ id: 6, name: 'SCUF' },{ id: 7, name: 'IUF' },{ id: 8, name: 'HFHD' },{ id: 9, name: 'HFHD+HP' },
178
-          { id: 10, name: 'PHF' },{ id: 11, name: 'HFR' },{ id: 12, name: 'HDF+HP' },{ id: 13, name: 'CRRT' },{ id: 14, name: '腹水回输' },
179
-          { id:19, name:"IUF+HD"},{ id:20, name:"UF"},{ id:21, name:"HD+"},{ id:22, name:"血浆胆红素吸附+HDF"},{ id:23, name:"血浆胆红素吸附"},
180
-          { id:24, name:"I-HDF"},{ id:25, name:"HD高通"},{ id:26, name:"CVVH"},{ id:27, name:"CVVHD"},{ id:28, name:"CVVHDF"},{ id:29, name:"PE"},
181
-          { id:30, name:"血浆胆红素吸附+HP"},{ id:31, name:"HPD"},{ id:32, name:"HDP"},{ id:33, name:"HFD"},{ id:34, name:"HDF100"},
182
-          { id:35, name:"HDF600"},{ id:36, name:"HDF800"},{ id:37, name:"HDF1000"},
183
-        ],
181
+
184
         date_mode_options:[{value:1,label:'按周'},{value:2,label:'按天'},{value:3,label:'按月'},{value:4,label:'按年'}],
182
         date_mode_options:[{value:1,label:'按周'},{value:2,label:'按天'},{value:3,label:'按月'},{value:4,label:'按年'}],
185
         source_options:[{value:1,label:'以开始透析为准'},{value:2,label:'以排班为准'}],
183
         source_options:[{value:1,label:'以开始透析为准'},{value:2,label:'以排班为准'}],
186
 
184
 
193
       return_click(){
191
       return_click(){
194
         this.$router.push('/Dialysisanalysis/qualitycontrol/weightblood')
192
         this.$router.push('/Dialysisanalysis/qualitycontrol/weightblood')
195
       },
193
       },
196
-      // 数据源
197
-      getecharts(){
198
-        var chartDom = document.getElementById('mychart')
199
-        var myChart = echarts.init(chartDom);
200
-        const params ={
201
-          start_date:this.start_date,
202
-          end_date:this.end_date,
203
-        }
204
-        Getdialyzer(params).then(response =>{
205
-          console.log('ressponse',response.data.data);
206
-          if(response.data.state ==1){
207
-            console.log('bbbbbbbbb',response.data.data);
208
-            const list = response.data.data.data
209
-            const xAxis =[]
210
-            const yAxis = []
211
-            list.forEach(item =>{
212
-
213
-              xAxis.push(item.name)
214
-              yAxis.push(item.count)
215
-            })
216
-            this.bar_xAxis = xAxis
217
-            const options = []
218
-            for(let i in xAxis){
219
-              const arr ={
220
-                id:i+1,
221
-                name:xAxis[i]
222
-              }
223
-              options.push(arr)
224
-            }
225
-            this.dialyze_options = options
226
-            const option = {
227
-              xAxis: {
228
-                type: 'category',
229
-                data: xAxis,
230
-                axisLabel:{
231
-                  interval:0,
232
-                }
233
-              },
234
-              yAxis: {
235
-                type: 'value'
236
-              },
237
-              series: [
238
-                {
239
-                  data:yAxis ,
240
-                  type: 'bar',
241
-                  barWidth: '25%',
242
-                  label: {
243
-                    normal: {
244
-                      show: true,
245
-                      position: 'top',
246
-                      formatter: '{c}',
247
-                      textStyle:{
248
-                        color: 'black',//字体颜色
249
-                        fontSize: 13//字体大小
250
-                      }
251
-                    },
252
-                  },
253
-                  itemStyle:{
254
-                    normal:{
255
-                      color:function (params){
256
-                        // const colorarr=['#FFA333','#A155E8','#6D91FF','#A233A2'];
257
-                        var colorarr = [["#A9E0F3", "#9FBDFC"],["#FFD7C0", "#FF9994"]]
258
-                        var index = params.dataIndex;
259
-                        if (params.dataIndex >= colorarr.length) {
260
-                          index = params.dataIndex % colorarr.length;
261
-                        }
262
-                        return new echarts.graphic.LinearGradient(0, 0, 0, 1, [
263
-                          { offset: 0, color: colorarr[index][0] },
264
-                          // { offset: 0.5, color: colorList[index][1] },
265
-                          { offset: 1, color: colorarr[index][1] }
266
-                        ]);
267
-                      }
268
-                    }
269
-                  }
270
-                }
271
-              ]
272
-            }
273
-            myChart.setOption(option);
274
-            myChart.on('click',params =>{
275
-              this.dialyze_dialog = true
276
-              console.log('vvvvv',params);
277
-              this.Getdialyzerdetail(params.name)
278
-            })
279
-          }
280
-
281
-        })
282
-
283
-      },
284
       // 导出excel
194
       // 导出excel
285
       exportExcel(){
195
       exportExcel(){
286
         let tableData = [
196
         let tableData = [
287
-          ['序号', '透析号', '患者姓名', '透析日期','透析模式', '透析器']//导出表头
197
+          ['序号', '透析号', '患者姓名','性别','年龄', '透析日期','干体重', '超滤总量','实际超滤量','超滤率','透前血压','监测记录血压','透后血压']//导出表头
288
         ]
198
         ]
289
         this.tableData.forEach((item,index) =>{
199
         this.tableData.forEach((item,index) =>{
290
           let rowdata=[]
200
           let rowdata=[]
291
           rowdata=[
201
           rowdata=[
292
             item.index,
202
             item.index,
293
             item.dialysis_no,
203
             item.dialysis_no,
294
-            item.name,
295
-            item.date,
296
-            item.mode_name,
297
-            item.dialyszers,
204
+            item.patient_name,
205
+            item.gender,
206
+            item.age,
207
+            item.dialysis_date,
208
+            item.dryweight,
209
+            item.UltrafiltrationVol,
210
+            item.actual_ultrafiltration,
211
+            item.ultrafiltration_rate,
212
+            item.preDialysisBP,
213
+            item.monitoringbp,
214
+            item.PostDialysisBP,
298
           ]
215
           ]
299
           tableData.push(rowdata)
216
           tableData.push(rowdata)
300
         })
217
         })
301
         let workSheet = XLSX.utils.aoa_to_sheet(tableData);
218
         let workSheet = XLSX.utils.aoa_to_sheet(tableData);
302
         let bookNew = XLSX.utils.book_new();
219
         let bookNew = XLSX.utils.book_new();
303
-        XLSX.utils.book_append_sheet(bookNew, workSheet, '透析器使用统计') // 工作簿名称
304
-        let name = '透析器使用统计'+ '.xlsx'
220
+        XLSX.utils.book_append_sheet(bookNew, workSheet, '患者血压详情') // 工作簿名称
221
+        let name = '患者血压详情'+ '.xlsx'
305
         XLSX.writeFile(bookNew, name) // 保存的文件名
222
         XLSX.writeFile(bookNew, name) // 保存的文件名
306
       },
223
       },
307
-      // 查询
308
-      sete_click(){
309
-        this.getecharts()
310
-      },
311
       // 详情查询
224
       // 详情查询
312
       deil_click(){
225
       deil_click(){
313
-        this.Getdialyzerdetail(this.getdialyze(this.dialyze_value))
226
+        this.Getdialyzerdetail(this.status_value)
314
       },
227
       },
315
-       // 下载
316
-      Download_click(){
317
-        const options ={
318
-          allowTaint: true,
319
-          useCORS: true
320
-        }
321
-        html2canvas(this.$refs.mychart,options).then(canvas =>{
322
-          // const imageSrc = canvas.toDataURL();
323
-          const imageUrl = canvas.toDataURL("image/png");
324
-          // console.log('5555',imageUrl);
325
-        //   // const base = this.url.split(',')[1]
326
-        //   // console.log('2222',base);
327
-          const blob = this.dataURLtoBlob(imageUrl)
328
-          // console.log('4444',blob);
329
-          const url = URL.createObjectURL(blob);
330
-          // const file = (this.url).blob();
331
-          // console.log('1111',url);
332
-          var link= document.createElement("a");
333
-        //   //将生成的图片url赋值给a标签的href属性
334
-          link.href = url;
335
-        //   //设置下载的文件名
336
-          link.download = "透析器使用统计.jpg";
337
-          // // 将a标签插入dom中
338
-          console.log('link',link);
339
-          document.body.appendChild(link);
340
-          //模拟点击事件触发下载
341
-          link.click();
342
-          // 完成之后销毁创建的a标签
343
-          document.body.removeChild(link);
344
 
228
 
345
-        })
346
-      },
347
       // 选择日期
229
       // 选择日期
348
       datachange(eve){
230
       datachange(eve){
349
         if(eve ==1){
231
         if(eve ==1){
404
         console.log('eve',eve);
286
         console.log('eve',eve);
405
       },
287
       },
406
       // 详情数据源
288
       // 详情数据源
407
-      Getdialyzerdetail(name){
289
+      Getdialyzerdetail(value){
408
         const params={
290
         const params={
409
-          dialyzer:name,
410
-          start_date:this.start_date,
411
-          end_date:this.end_date,
291
+          status_type:value,
292
+          start_time:this.start_date,
293
+          end_time:this.end_date,
412
           page:this.currentPage,
294
           page:this.currentPage,
413
           limit:this.limit,
295
           limit:this.limit,
414
         }
296
         }
415
-        Getdialyzerdetail(params).then(response =>{
297
+        Getbpdetail(params).then(response =>{
416
           if(response.data.state == 1){
298
           if(response.data.state == 1){
417
-            const list = response.data.data.prescriptions
299
+            const list = response.data.data.list
418
             const table=[]
300
             const table=[]
419
-            list.forEach((item,index)=>{
420
-              const obj ={
421
-                index:index+1,
422
-                dialysis_no:item.patient.dialysis_no,
423
-                name:item.patient.name,
424
-                date:this.getTime(item.record_date),
425
-                mode_name:this.getmode(item.mode_id),
426
-                dialyszers:item.dialysis_dialyszers +'  '+ item.dialysis_irrigation+'  '+item.dialysis_strainer
427
-                // dialyszers:item.dialysis_dialyszers || item.dialysis_irrigation || item.dialysis_strainer
428
-              }
429
-              table.push(obj)
430
-            })
431
-            this.tableData = table
432
-            this.total = response.data.data.total
301
+            if(list.length > 0){
302
+              list.forEach((item,index)=>{
303
+                const obj ={
304
+                  index:index+1,
305
+                  dialysis_no:item.dialysis_no,
306
+                  patient_name:item.patient_name,
307
+                  gender:this.getgender(item.gender),
308
+                  age:item.age,
309
+                  dialysis_date:this.getTime(item.assessment_date),
310
+                  dryweight:item.dry_weight,
311
+                  UltrafiltrationVol:item.ultrafiltration_vol/1000,
312
+                  actual_ultrafiltration:item.actual_ultrafiltration,
313
+                  ultrafiltration_rate:item.ultrafiltration_rate,
314
+                  preDialysisBP:item.pre_dialysis_bp,
315
+                  monitoringbp:item.monitoring_bp,
316
+                  PostDialysisBP:item.post_dialysis_bp,
317
+                }
318
+                table.push(obj)
319
+              })
320
+              this.tableData = table
321
+              this.total = response.data.data.total
322
+            }
433
           }
323
           }
434
-          console.log('77777',response);
324
+          console.log('77777血压表格',response);
435
         })
325
         })
436
       },
326
       },
437
        // 首先定义一个getPreviousDate函数,方便调用
327
        // 首先定义一个getPreviousDate函数,方便调用
536
       },
426
       },
537
       handleCurrentChange(val){
427
       handleCurrentChange(val){
538
         this.currentPage = val
428
         this.currentPage = val
539
-        this.Getdialyzerdetail(this.getdialyze(this.dialyze_value))
429
+        this.Getdialyzerdetail(this.status_value)
540
       },
430
       },
541
       handleSizeChange(val){
431
       handleSizeChange(val){
542
         this.limit = val
432
         this.limit = val
543
-        this.Getdialyzerdetail(this.getdialyze(this.dialyze_value))
433
+        this.Getdialyzerdetail(this.status_value)
544
       },
434
       },
545
-      // 透析模式
546
-      getmode(ids){
547
-        const modes=this.modearr
548
-        for(let i in modes){
549
-          if(ids == modes[i].id){
550
-            return modes[i].name
551
-          }
435
+       // 性别
436
+       getgender(ids){
437
+        if(ids ==1){
438
+          return "男"
439
+        }else{
440
+          return "女"
552
         }
441
         }
553
       },
442
       },
443
+      // getVol(value){
444
+      //   if(value >1000){
445
+
446
+      //   }
447
+      // },
554
        // 转换时间
448
        // 转换时间
555
       getTime(val) {
449
       getTime(val) {
556
         if(val < 0){
450
         if(val < 0){
573
         }
467
         }
574
         return new Blob([u8arr], { type: mime });
468
         return new Blob([u8arr], { type: mime });
575
       },
469
       },
576
-      // 全部透析器
577
-      Getdialyzerconfig(){
578
-        Getdialyzerconfig().then(response =>{
579
-          console.log('666666',response);
580
-        })
581
-      },
582
-      getdialyze(val){
583
-        const option = this.dialyze_options
584
-        for(let i in option){
585
-          if(val == option[i].id){
586
-            return option[i].name
587
-          }
588
-        }
589
-      }
470
+
590
     },
471
     },
591
     mounted(){
472
     mounted(){
592
-      this.getecharts()
473
+
593
     },
474
     },
594
     created(){
475
     created(){
595
       this.start_date = this.getFirstDayOfMonth(new Date())
476
       this.start_date = this.getFirstDayOfMonth(new Date())
596
-      this.Getdialyzerconfig()
477
+      this.Getdialyzerdetail(this.status_value)
597
     },
478
     },
598
 
479
 
599
   }
480
   }

+ 105 - 95
src/xt_pages/Dialysisanalysis/weightblood/components/dialyze_after.vue 查看文件

68
       <el-dialog
68
       <el-dialog
69
         title="详情"
69
         title="详情"
70
         :visible.sync="dialyze_dialog"
70
         :visible.sync="dialyze_dialog"
71
-        width="80%">
71
+        width="90%">
72
         <div>
72
         <div>
73
           <div style="display: flex;margin-bottom: 20px;">
73
           <div style="display: flex;margin-bottom: 20px;">
74
-            <div style="flex: 2;display: flex;flex-wrap:wrap">
74
+            <div style="flex: 5;display: flex;flex-wrap:wrap">
75
               <div>
75
               <div>
76
                 日期:
76
                 日期:
77
                 <el-select v-model="date_value" @change="datachange" placeholder="请选择" style="width: 100px;">
77
                 <el-select v-model="date_value" @change="datachange" placeholder="请选择" style="width: 100px;">
100
                   style="width: 150px;">
100
                   style="width: 150px;">
101
                 </el-date-picker>
101
                 </el-date-picker>
102
               </div>
102
               </div>
103
+
103
               <div>
104
               <div>
104
                 体重增长:
105
                 体重增长:
105
-                <el-select v-model="dialyze_value" placeholder="请选择" style="width: 100px;">
106
+                <el-select v-model="weight_value" placeholder="请选择" style="width: 100px;">
106
                   <el-option :key="0" label="不限" :value="0"></el-option>
107
                   <el-option :key="0" label="不限" :value="0"></el-option>
107
                   <el-option
108
                   <el-option
108
-                    v-for="item in dialyze_options"
109
-                    :key="item.id"
110
-                    :label="item.name"
111
-                    :value="item.id">
109
+                    v-for="item in weight_gain"
110
+                    :key="item.value"
111
+                    :label="item.label"
112
+                    :value="item.value">
112
                   </el-option>
113
                   </el-option>
113
                 </el-select>
114
                 </el-select>
114
               </div>
115
               </div>
115
               <div>
116
               <div>
116
                 干体重:
117
                 干体重:
117
-                <el-select v-model="dialyze_value" placeholder="请选择" style="width: 100px;">
118
+                <el-select v-model="dry_value" placeholder="请选择" style="width: 100px;">
118
                   <el-option :key="0" label="不限" :value="0"></el-option>
119
                   <el-option :key="0" label="不限" :value="0"></el-option>
119
                   <el-option
120
                   <el-option
120
-                    v-for="item in dialyze_options"
121
-                    :key="item.id"
122
-                    :label="item.name"
123
-                    :value="item.id">
121
+                    v-for="item in status_options"
122
+                    :key="item.value"
123
+                    :label="item.label"
124
+                    :value="item.value">
124
                   </el-option>
125
                   </el-option>
125
                 </el-select>
126
                 </el-select>
126
               </div>
127
               </div>
127
               <div>
128
               <div>
128
                 透后体重:
129
                 透后体重:
129
-                <el-select v-model="dialyze_value" placeholder="请选择" style="width: 100px;">
130
+                <el-select v-model="after_value" placeholder="请选择" style="width: 100px;">
130
                   <el-option :key="0" label="不限" :value="0"></el-option>
131
                   <el-option :key="0" label="不限" :value="0"></el-option>
131
                   <el-option
132
                   <el-option
132
-                    v-for="item in dialyze_options"
133
-                    :key="item.id"
134
-                    :label="item.name"
135
-                    :value="item.id">
133
+                    v-for="item in after_options"
134
+                    :key="item.value"
135
+                    :label="item.label"
136
+                    :value="item.value">
136
                   </el-option>
137
                   </el-option>
137
                 </el-select>
138
                 </el-select>
138
               </div>
139
               </div>
139
               <div >
140
               <div >
140
-                <el-input v-model="input" placeholder="搜索患者姓名"></el-input>
141
+                <el-input v-model="Patient_name" placeholder="搜索患者姓名" style="width: 120px;"></el-input>
141
               </div>
142
               </div>
142
             </div>
143
             </div>
143
             <div style="flex: 1;">
144
             <div style="flex: 1;">
167
               label="患者姓名">
168
               label="患者姓名">
168
             </el-table-column>
169
             </el-table-column>
169
             <el-table-column
170
             <el-table-column
170
-              prop="name"
171
+              prop="sex"
171
               label="性别"
172
               label="性别"
172
               width="">
173
               width="">
173
             </el-table-column>
174
             </el-table-column>
174
             <el-table-column
175
             <el-table-column
175
-              prop="name"
176
+              prop="age"
176
               label="年龄"
177
               label="年龄"
177
               width="">
178
               width="">
178
             </el-table-column>
179
             </el-table-column>
182
               width="">
183
               width="">
183
             </el-table-column>
184
             </el-table-column>
184
             <el-table-column
185
             <el-table-column
185
-              prop="mode_name"
186
+              prop="dry_weight"
186
               label="干体重"
187
               label="干体重"
187
               width="">
188
               width="">
188
             </el-table-column>
189
             </el-table-column>
189
             <el-table-column
190
             <el-table-column
190
-              prop="dialyszers"
191
+              prop="last_weight_after"
191
               label="前次透后体重">
192
               label="前次透后体重">
192
             </el-table-column>
193
             </el-table-column>
193
             <el-table-column
194
             <el-table-column
194
-              prop="date"
195
+              prop="weight_before"
195
               label="透前体重"
196
               label="透前体重"
196
               width="">
197
               width="">
197
             </el-table-column>
198
             </el-table-column>
198
             <el-table-column
199
             <el-table-column
199
-              prop="mode_name"
200
+              prop="weight_add"
200
               label="体重增加"
201
               label="体重增加"
201
               width="">
202
               width="">
202
             </el-table-column>
203
             </el-table-column>
203
             <el-table-column
204
             <el-table-column
204
-              prop="dialyszers"
205
+              prop="weight_after"
205
               label="透后体重">
206
               label="透后体重">
206
             </el-table-column>
207
             </el-table-column>
207
           </el-table>
208
           </el-table>
230
 import * as echarts from 'echarts';
231
 import * as echarts from 'echarts';
231
 import XLSX from 'xlsx';
232
 import XLSX from 'xlsx';
232
 import { uParseTime } from "@/utils/tools";
233
 import { uParseTime } from "@/utils/tools";
233
-import {Getdialyzer,Getdialyzerdetail,Getdialyzerconfig} from '../../../../api/qcd'
234
+import {Getpatinetweight,Getweightdetail} from '../../../../api/qcd'
234
 import { forEach } from 'jszip';
235
 import { forEach } from 'jszip';
235
 import html2canvas from "html2canvas"
236
 import html2canvas from "html2canvas"
236
   export default {
237
   export default {
250
         limit:50,
251
         limit:50,
251
         total:0,
252
         total:0,
252
         tableData:[],
253
         tableData:[],
253
-        dialyze_options:[],
254
+        weight_gain:[{value:1,label:'体重增长<=3%'},{value:2,label:'3%<体重增长<5%'},{value:3,label:'体重增长>=5%'}],
255
+        weight_value:0,
256
+        dry_value:0,
257
+        after_value:0,
258
+        after_options:[],
259
+        Patient_name:'',
254
         date_options:[{value:1,label:'最近七天'},{value:2,label:'本周'},{value:3,label:'上周'},{value:4,label:'本月'},
260
         date_options:[{value:1,label:'最近七天'},{value:2,label:'本周'},{value:3,label:'上周'},{value:4,label:'本月'},
255
                       {value:5,label:'上月'},{value:6,label:'本年'},{value:7,label:'上一年'}
261
                       {value:5,label:'上月'},{value:6,label:'本年'},{value:7,label:'上一年'}
256
         ],
262
         ],
257
-        modearr:[{ id: 1, name: 'HD' },{ id: 2, name: 'HDF' },{ id: 3, name: 'HD + HP' },{ id: 4, name: 'HP' },
258
-          { id: 5, name: 'HF' },{ id: 6, name: 'SCUF' },{ id: 7, name: 'IUF' },{ id: 8, name: 'HFHD' },{ id: 9, name: 'HFHD+HP' },
259
-          { id: 10, name: 'PHF' },{ id: 11, name: 'HFR' },{ id: 12, name: 'HDF+HP' },{ id: 13, name: 'CRRT' },{ id: 14, name: '腹水回输' },
260
-          { id:19, name:"IUF+HD"},{ id:20, name:"UF"},{ id:21, name:"HD+"},{ id:22, name:"血浆胆红素吸附+HDF"},{ id:23, name:"血浆胆红素吸附"},
261
-          { id:24, name:"I-HDF"},{ id:25, name:"HD高通"},{ id:26, name:"CVVH"},{ id:27, name:"CVVHD"},{ id:28, name:"CVVHDF"},{ id:29, name:"PE"},
262
-          { id:30, name:"血浆胆红素吸附+HP"},{ id:31, name:"HPD"},{ id:32, name:"HDP"},{ id:33, name:"HFD"},{ id:34, name:"HDF100"},
263
-          { id:35, name:"HDF600"},{ id:36, name:"HDF800"},{ id:37, name:"HDF1000"},
264
-        ],
263
+        status_options:[{value:1,label:'小于40kg'},{value:2,label:'40~50kg'},{value:3,label:'60~70kg'},
264
+                        {value:4,label:'大于70kg'},{value:5,label:'未知'}],
265
+
265
         date_mode_options:[{value:1,label:'按周'},{value:2,label:'按天'},{value:3,label:'按月'},{value:4,label:'按年'}],
266
         date_mode_options:[{value:1,label:'按周'},{value:2,label:'按天'},{value:3,label:'按月'},{value:4,label:'按年'}],
266
         source_options:[{value:1,label:'以开始透析为准'},{value:2,label:'以排班为准'}],
267
         source_options:[{value:1,label:'以开始透析为准'},{value:2,label:'以排班为准'}],
267
 
268
 
268
-
269
-        input:'',
269
+        Patient_name:'',
270
       }
270
       }
271
     },
271
     },
272
     methods:{
272
     methods:{
279
         var chartDom = document.getElementById('mychart')
279
         var chartDom = document.getElementById('mychart')
280
         var myChart = echarts.init(chartDom);
280
         var myChart = echarts.init(chartDom);
281
         const params ={
281
         const params ={
282
-          start_date:this.start_date,
283
-          end_date:this.end_date,
282
+          start_time:this.start_date,
283
+          end_time:this.end_date,
284
+          statistics_type:4,
284
         }
285
         }
285
-        Getdialyzer(params).then(response =>{
286
+        Getpatinetweight(params).then(response =>{
286
           console.log('ressponse',response.data.data);
287
           console.log('ressponse',response.data.data);
287
           if(response.data.state ==1){
288
           if(response.data.state ==1){
288
             console.log('bbbbbbbbb',response.data.data);
289
             console.log('bbbbbbbbb',response.data.data);
289
-            const list = response.data.data.data
290
+            const list = response.data.data.list
290
             const xAxis =[]
291
             const xAxis =[]
291
             const yAxis = []
292
             const yAxis = []
292
-            list.forEach(item =>{
293
-
294
-              xAxis.push(item.name)
295
-              yAxis.push(item.count)
296
-            })
297
-            this.bar_xAxis = xAxis
298
-            const options = []
299
-            for(let i in xAxis){
300
-              const arr ={
301
-                id:i+1,
302
-                name:xAxis[i]
293
+            var weight = []
294
+            for(let i in list){
295
+              xAxis.push(list[i].name)
296
+              yAxis.push(list[i].total)
297
+               const obj ={
298
+                value:i+1,
299
+                label:list[i].name
303
               }
300
               }
304
-              options.push(arr)
301
+              weight.push(obj)
305
             }
302
             }
306
-            this.dialyze_options = options
303
+            this.after_options = weight
307
             const option = {
304
             const option = {
308
               xAxis: {
305
               xAxis: {
309
                 type: 'category',
306
                 type: 'category',
355
             myChart.on('click',params =>{
352
             myChart.on('click',params =>{
356
               this.dialyze_dialog = true
353
               this.dialyze_dialog = true
357
               console.log('vvvvv',params);
354
               console.log('vvvvv',params);
358
-              this.Getdialyzerdetail(params.name)
355
+              for(let i in this.after_options){
356
+                if(params.name = this.after_options[i].label){
357
+                  this.after_value = this.after_options[i].value
358
+                }
359
+              }
360
+              this.Getdialyzerdetail(this.after_value)
359
             })
361
             })
360
           }
362
           }
361
 
363
 
365
       // 导出excel
367
       // 导出excel
366
       exportExcel(){
368
       exportExcel(){
367
         let tableData = [
369
         let tableData = [
368
-          ['序号', '透析号', '患者姓名', '透析日期','透析模式', '透析器']//导出表头
370
+          ['序号', '透析号', '患者姓名','性别','年龄','透析日期','干体重','前次透后体重','透前体重','体重增加','透后体重',]//导出表头
369
         ]
371
         ]
370
         this.tableData.forEach((item,index) =>{
372
         this.tableData.forEach((item,index) =>{
371
           let rowdata=[]
373
           let rowdata=[]
373
             item.index,
375
             item.index,
374
             item.dialysis_no,
376
             item.dialysis_no,
375
             item.name,
377
             item.name,
378
+            item.sex,
379
+            item.age,
376
             item.date,
380
             item.date,
377
-            item.mode_name,
378
-            item.dialyszers,
381
+
382
+            item.dry_weight,
383
+            item.last_weight_after,
384
+            item.weight_before,
385
+            item.weight_add,
386
+            item.weight_after
387
+
379
           ]
388
           ]
380
           tableData.push(rowdata)
389
           tableData.push(rowdata)
381
         })
390
         })
382
         let workSheet = XLSX.utils.aoa_to_sheet(tableData);
391
         let workSheet = XLSX.utils.aoa_to_sheet(tableData);
383
         let bookNew = XLSX.utils.book_new();
392
         let bookNew = XLSX.utils.book_new();
384
-        XLSX.utils.book_append_sheet(bookNew, workSheet, '透析器使用统计') // 工作簿名称
385
-        let name = '透析器使用统计'+ '.xlsx'
393
+        XLSX.utils.book_append_sheet(bookNew, workSheet, '患者后体重分析') // 工作簿名称
394
+        let name = '患者后体重分析'+ '.xlsx'
386
         XLSX.writeFile(bookNew, name) // 保存的文件名
395
         XLSX.writeFile(bookNew, name) // 保存的文件名
387
       },
396
       },
388
       // 查询
397
       // 查询
485
         console.log('eve',eve);
494
         console.log('eve',eve);
486
       },
495
       },
487
       // 详情数据源
496
       // 详情数据源
488
-      Getdialyzerdetail(name){
489
-        const params={
490
-          dialyzer:name,
491
-          start_date:this.start_date,
492
-          end_date:this.end_date,
497
+      Getdialyzerdetail(after){
498
+        const params ={
499
+          start_time:this.start_date,
500
+          end_time:this.end_date,
501
+          add_type:this.weight_value,
502
+          dry_type:this.dry_value,
503
+          after_type:after,
504
+          keyword:this.Patient_name,
493
           page:this.currentPage,
505
           page:this.currentPage,
494
           limit:this.limit,
506
           limit:this.limit,
495
         }
507
         }
496
-        Getdialyzerdetail(params).then(response =>{
508
+        Getweightdetail(params).then(response =>{
497
           if(response.data.state == 1){
509
           if(response.data.state == 1){
498
-            const list = response.data.data.prescriptions
510
+            const list = response.data.data.list
499
             const table=[]
511
             const table=[]
500
-            list.forEach((item,index)=>{
501
-              const obj ={
502
-                index:index+1,
503
-                dialysis_no:item.patient.dialysis_no,
504
-                name:item.patient.name,
505
-                date:this.getTime(item.record_date),
506
-                mode_name:this.getmode(item.mode_id),
507
-                dialyszers:item.dialysis_dialyszers +'  '+ item.dialysis_irrigation+'  '+item.dialysis_strainer
508
-                // dialyszers:item.dialysis_dialyszers || item.dialysis_irrigation || item.dialysis_strainer
509
-              }
510
-              table.push(obj)
511
-            })
512
-            this.tableData = table
513
-            this.total = response.data.data.total
512
+            if(list.length>0){
513
+              list.forEach((item,index)=>{
514
+                const obj ={
515
+                  index:index+1,
516
+                  dialysis_no:item.dialysis_no,
517
+                  name:item.patient_name,
518
+                  sex:this.getgender(item.gender),
519
+                  age:item.age,
520
+                  date:this.getTime(item.assessment_date),
521
+                  dry_weight:item.dry_weight,
522
+                  last_weight_after:item.last_weight_after,
523
+                  weight_before:item.weight_before,
524
+                  weight_add:item.weight_add,
525
+                  weight_after:item.weight_after
526
+                }
527
+                table.push(obj)
528
+              })
529
+              this.tableData = table
530
+              this.total = response.data.data.total
531
+            }
514
           }
532
           }
515
           console.log('77777',response);
533
           console.log('77777',response);
516
         })
534
         })
623
         this.limit = val
641
         this.limit = val
624
         this.Getdialyzerdetail(this.getdialyze(this.dialyze_value))
642
         this.Getdialyzerdetail(this.getdialyze(this.dialyze_value))
625
       },
643
       },
626
-      // 透析模式
627
-      getmode(ids){
628
-        const modes=this.modearr
629
-        for(let i in modes){
630
-          if(ids == modes[i].id){
631
-            return modes[i].name
632
-          }
644
+      // 性别
645
+      getgender(ids){
646
+        if(ids ==1){
647
+          return "男"
648
+        }else{
649
+          return "女"
633
         }
650
         }
634
       },
651
       },
635
        // 转换时间
652
        // 转换时间
654
         }
671
         }
655
         return new Blob([u8arr], { type: mime });
672
         return new Blob([u8arr], { type: mime });
656
       },
673
       },
657
-      // 全部透析器
658
-      Getdialyzerconfig(){
659
-        Getdialyzerconfig().then(response =>{
660
-          console.log('666666',response);
661
-        })
662
-      },
663
       getdialyze(val){
674
       getdialyze(val){
664
         const option = this.dialyze_options
675
         const option = this.dialyze_options
665
         for(let i in option){
676
         for(let i in option){
674
     },
685
     },
675
     created(){
686
     created(){
676
       this.start_date = this.getFirstDayOfMonth(new Date())
687
       this.start_date = this.getFirstDayOfMonth(new Date())
677
-      this.Getdialyzerconfig()
678
     },
688
     },
679
 
689
 
680
   }
690
   }

+ 105 - 94
src/xt_pages/Dialysisanalysis/weightblood/components/dry_denominator.vue 查看文件

69
       <el-dialog
69
       <el-dialog
70
         title="详情"
70
         title="详情"
71
         :visible.sync="dialyze_dialog"
71
         :visible.sync="dialyze_dialog"
72
-        width="80%">
72
+        width="90%">
73
         <div>
73
         <div>
74
           <div style="display: flex;margin-bottom: 20px;">
74
           <div style="display: flex;margin-bottom: 20px;">
75
-            <div style="flex: 2;display: flex;flex-wrap:wrap">
75
+            <div style="flex: 5;display: flex;flex-wrap:wrap">
76
               <div>
76
               <div>
77
                 日期:
77
                 日期:
78
                 <el-select v-model="date_value" @change="datachange" placeholder="请选择" style="width: 100px;">
78
                 <el-select v-model="date_value" @change="datachange" placeholder="请选择" style="width: 100px;">
101
                   style="width: 150px;">
101
                   style="width: 150px;">
102
                 </el-date-picker>
102
                 </el-date-picker>
103
               </div>
103
               </div>
104
-              <div>
104
+
105
+               <div>
105
                 体重增长:
106
                 体重增长:
106
-                <el-select v-model="dialyze_value" placeholder="请选择" style="width: 100px;">
107
+                <el-select v-model="weight_value" placeholder="请选择" style="width: 100px;">
107
                   <el-option :key="0" label="不限" :value="0"></el-option>
108
                   <el-option :key="0" label="不限" :value="0"></el-option>
108
                   <el-option
109
                   <el-option
109
-                    v-for="item in dialyze_options"
110
-                    :key="item.id"
111
-                    :label="item.name"
112
-                    :value="item.id">
110
+                    v-for="item in weight_gain"
111
+                    :key="item.value"
112
+                    :label="item.label"
113
+                    :value="item.value">
113
                   </el-option>
114
                   </el-option>
114
                 </el-select>
115
                 </el-select>
115
               </div>
116
               </div>
116
               <div>
117
               <div>
117
                 干体重:
118
                 干体重:
118
-                <el-select v-model="dialyze_value" placeholder="请选择" style="width: 100px;">
119
+                <el-select v-model="dry_value" placeholder="请选择" style="width: 100px;">
119
                   <el-option :key="0" label="不限" :value="0"></el-option>
120
                   <el-option :key="0" label="不限" :value="0"></el-option>
120
                   <el-option
121
                   <el-option
121
-                    v-for="item in dialyze_options"
122
-                    :key="item.id"
123
-                    :label="item.name"
124
-                    :value="item.id">
122
+                    v-for="item in status_options"
123
+                    :key="item.value"
124
+                    :label="item.label"
125
+                    :value="item.value">
125
                   </el-option>
126
                   </el-option>
126
                 </el-select>
127
                 </el-select>
127
               </div>
128
               </div>
128
               <div>
129
               <div>
129
                 透后体重:
130
                 透后体重:
130
-                <el-select v-model="dialyze_value" placeholder="请选择" style="width: 100px;">
131
+                <el-select v-model="after_value" placeholder="请选择" style="width: 100px;">
131
                   <el-option :key="0" label="不限" :value="0"></el-option>
132
                   <el-option :key="0" label="不限" :value="0"></el-option>
132
                   <el-option
133
                   <el-option
133
-                    v-for="item in dialyze_options"
134
-                    :key="item.id"
135
-                    :label="item.name"
136
-                    :value="item.id">
134
+                    v-for="item in after_options"
135
+                    :key="item.value"
136
+                    :label="item.label"
137
+                    :value="item.value">
137
                   </el-option>
138
                   </el-option>
138
                 </el-select>
139
                 </el-select>
139
               </div>
140
               </div>
140
               <div >
141
               <div >
141
-                <el-input v-model="input" placeholder="搜索患者姓名"></el-input>
142
+                <el-input v-model="Patient_name" placeholder="搜索患者姓名" style="width: 120px;"></el-input>
142
               </div>
143
               </div>
143
             </div>
144
             </div>
144
             <div style="flex: 1;">
145
             <div style="flex: 1;">
168
               label="患者姓名">
169
               label="患者姓名">
169
             </el-table-column>
170
             </el-table-column>
170
             <el-table-column
171
             <el-table-column
171
-              prop="name"
172
+              prop="sex"
172
               label="性别"
173
               label="性别"
173
               width="">
174
               width="">
174
             </el-table-column>
175
             </el-table-column>
175
             <el-table-column
176
             <el-table-column
176
-              prop="name"
177
+              prop="age"
177
               label="年龄"
178
               label="年龄"
178
               width="">
179
               width="">
179
             </el-table-column>
180
             </el-table-column>
183
               width="">
184
               width="">
184
             </el-table-column>
185
             </el-table-column>
185
             <el-table-column
186
             <el-table-column
186
-              prop="mode_name"
187
+              prop="dry_weight"
187
               label="干体重"
188
               label="干体重"
188
               width="">
189
               width="">
189
             </el-table-column>
190
             </el-table-column>
190
             <el-table-column
191
             <el-table-column
191
-              prop="dialyszers"
192
+              prop="last_weight_after"
192
               label="前次透后体重">
193
               label="前次透后体重">
193
             </el-table-column>
194
             </el-table-column>
194
             <el-table-column
195
             <el-table-column
195
-              prop="date"
196
+              prop="weight_before"
196
               label="透前体重"
197
               label="透前体重"
197
               width="">
198
               width="">
198
             </el-table-column>
199
             </el-table-column>
199
             <el-table-column
200
             <el-table-column
200
-              prop="mode_name"
201
+              prop="weight_add"
201
               label="体重增加"
202
               label="体重增加"
202
               width="">
203
               width="">
203
             </el-table-column>
204
             </el-table-column>
204
             <el-table-column
205
             <el-table-column
205
-              prop="dialyszers"
206
+              prop="weight_after"
206
               label="透后体重">
207
               label="透后体重">
207
             </el-table-column>
208
             </el-table-column>
208
           </el-table>
209
           </el-table>
231
 import * as echarts from 'echarts';
232
 import * as echarts from 'echarts';
232
 import XLSX from 'xlsx';
233
 import XLSX from 'xlsx';
233
 import { uParseTime } from "@/utils/tools";
234
 import { uParseTime } from "@/utils/tools";
234
-import {Getdialyzer,Getdialyzerdetail,Getdialyzerconfig} from '../../../../api/qcd'
235
+import {Getpatinetweight,Getweightdetail} from '../../../../api/qcd'
235
 import { forEach } from 'jszip';
236
 import { forEach } from 'jszip';
236
 import html2canvas from "html2canvas"
237
 import html2canvas from "html2canvas"
237
   export default {
238
   export default {
251
         limit:50,
252
         limit:50,
252
         total:0,
253
         total:0,
253
         tableData:[],
254
         tableData:[],
254
-        dialyze_options:[],
255
+        weight_gain:[],
256
+        weight_value:0,
257
+        dry_value:0,
258
+        after_value:0,
259
+        after_options:[{value:1,label:'达到干体重'},{value:2,label:'未达到干体重'},{value:3,label:'其他或卧床'}],
260
+        Patient_name:'',
255
         date_options:[{value:1,label:'最近七天'},{value:2,label:'本周'},{value:3,label:'上周'},{value:4,label:'本月'},
261
         date_options:[{value:1,label:'最近七天'},{value:2,label:'本周'},{value:3,label:'上周'},{value:4,label:'本月'},
256
                       {value:5,label:'上月'},{value:6,label:'本年'},{value:7,label:'上一年'}
262
                       {value:5,label:'上月'},{value:6,label:'本年'},{value:7,label:'上一年'}
257
         ],
263
         ],
258
-        modearr:[{ id: 1, name: 'HD' },{ id: 2, name: 'HDF' },{ id: 3, name: 'HD + HP' },{ id: 4, name: 'HP' },
259
-          { id: 5, name: 'HF' },{ id: 6, name: 'SCUF' },{ id: 7, name: 'IUF' },{ id: 8, name: 'HFHD' },{ id: 9, name: 'HFHD+HP' },
260
-          { id: 10, name: 'PHF' },{ id: 11, name: 'HFR' },{ id: 12, name: 'HDF+HP' },{ id: 13, name: 'CRRT' },{ id: 14, name: '腹水回输' },
261
-          { id:19, name:"IUF+HD"},{ id:20, name:"UF"},{ id:21, name:"HD+"},{ id:22, name:"血浆胆红素吸附+HDF"},{ id:23, name:"血浆胆红素吸附"},
262
-          { id:24, name:"I-HDF"},{ id:25, name:"HD高通"},{ id:26, name:"CVVH"},{ id:27, name:"CVVHD"},{ id:28, name:"CVVHDF"},{ id:29, name:"PE"},
263
-          { id:30, name:"血浆胆红素吸附+HP"},{ id:31, name:"HPD"},{ id:32, name:"HDP"},{ id:33, name:"HFD"},{ id:34, name:"HDF100"},
264
-          { id:35, name:"HDF600"},{ id:36, name:"HDF800"},{ id:37, name:"HDF1000"},
265
-        ],
264
+        status_options:[{value:1,label:'小于40kg'},{value:2,label:'40~50kg'},{value:3,label:'60~70kg'},
265
+                        {value:4,label:'大于70kg'},{value:5,label:'未知'}],
266
         date_mode_options:[{value:1,label:'按周'},{value:2,label:'按天'},{value:3,label:'按月'},{value:4,label:'按年'}],
266
         date_mode_options:[{value:1,label:'按周'},{value:2,label:'按天'},{value:3,label:'按月'},{value:4,label:'按年'}],
267
         source_options:[{value:1,label:'以开始透析为准'},{value:2,label:'以排班为准'}],
267
         source_options:[{value:1,label:'以开始透析为准'},{value:2,label:'以排班为准'}],
268
 
268
 
280
         var chartDom = document.getElementById('mychart')
280
         var chartDom = document.getElementById('mychart')
281
         var myChart = echarts.init(chartDom);
281
         var myChart = echarts.init(chartDom);
282
         const params ={
282
         const params ={
283
-          start_date:this.start_date,
284
-          end_date:this.end_date,
283
+          start_time:this.start_date,
284
+          end_time:this.end_date,
285
+          statistics_type:3,
285
         }
286
         }
286
-        Getdialyzer(params).then(response =>{
287
+        Getpatinetweight(params).then(response =>{
287
           console.log('ressponse',response.data.data);
288
           console.log('ressponse',response.data.data);
288
           if(response.data.state ==1){
289
           if(response.data.state ==1){
289
             console.log('bbbbbbbbb',response.data.data);
290
             console.log('bbbbbbbbb',response.data.data);
290
-            const list = response.data.data.data
291
+            const list = response.data.data.list
291
             const xAxis =[]
292
             const xAxis =[]
292
             const yAxis = []
293
             const yAxis = []
293
-            list.forEach(item =>{
294
-
295
-              xAxis.push(item.name)
296
-              yAxis.push(item.count)
297
-            })
298
-            this.bar_xAxis = xAxis
299
-            const options = []
300
-            for(let i in xAxis){
301
-              const arr ={
302
-                id:i+1,
303
-                name:xAxis[i]
294
+            const weight = []
295
+            for(let i in list){
296
+              xAxis.push(list[i].name)
297
+              yAxis.push(list[i].total)
298
+               const obj ={
299
+                value:i+1,
300
+                label:list[i].name
304
               }
301
               }
305
-              options.push(arr)
302
+              weight.push(obj)
306
             }
303
             }
307
-            this.dialyze_options = options
304
+            this.weight_gain = weight
308
             const option = {
305
             const option = {
309
               xAxis: {
306
               xAxis: {
310
                 type: 'category',
307
                 type: 'category',
356
             myChart.on('click',params =>{
353
             myChart.on('click',params =>{
357
               this.dialyze_dialog = true
354
               this.dialyze_dialog = true
358
               console.log('vvvvv',params);
355
               console.log('vvvvv',params);
359
-              this.Getdialyzerdetail(params.name)
356
+              for(let i in this.weight_gain){
357
+                if(params.name = this.weight_gain[i].label){
358
+                  this.weight_value = this.weight_gain[i].value
359
+                }
360
+              }
361
+              this.Getdialyzerdetail(this.weight_value)
360
             })
362
             })
361
           }
363
           }
362
 
364
 
366
       // 导出excel
368
       // 导出excel
367
       exportExcel(){
369
       exportExcel(){
368
         let tableData = [
370
         let tableData = [
369
-          ['序号', '透析号', '患者姓名', '透析日期','透析模式', '透析器']//导出表头
371
+          ['序号', '透析号', '患者姓名','性别','年龄','透析日期','干体重','前次透后体重','透前体重','体重增加','透后体重',]//导出表头
370
         ]
372
         ]
371
         this.tableData.forEach((item,index) =>{
373
         this.tableData.forEach((item,index) =>{
372
           let rowdata=[]
374
           let rowdata=[]
374
             item.index,
376
             item.index,
375
             item.dialysis_no,
377
             item.dialysis_no,
376
             item.name,
378
             item.name,
379
+            item.sex,
380
+            item.age,
377
             item.date,
381
             item.date,
378
-            item.mode_name,
379
-            item.dialyszers,
382
+
383
+            item.dry_weight,
384
+            item.last_weight_after,
385
+            item.weight_before,
386
+            item.weight_add,
387
+            item.weight_after
388
+
380
           ]
389
           ]
381
           tableData.push(rowdata)
390
           tableData.push(rowdata)
382
         })
391
         })
383
         let workSheet = XLSX.utils.aoa_to_sheet(tableData);
392
         let workSheet = XLSX.utils.aoa_to_sheet(tableData);
384
         let bookNew = XLSX.utils.book_new();
393
         let bookNew = XLSX.utils.book_new();
385
-        XLSX.utils.book_append_sheet(bookNew, workSheet, '透析器使用统计') // 工作簿名称
386
-        let name = '透析器使用统计'+ '.xlsx'
394
+        XLSX.utils.book_append_sheet(bookNew, workSheet, '患者体重增长分析(以干体重为分母)') // 工作簿名称
395
+        let name = '患者体重增长分析(以干体重为分母)'+ '.xlsx'
387
         XLSX.writeFile(bookNew, name) // 保存的文件名
396
         XLSX.writeFile(bookNew, name) // 保存的文件名
388
       },
397
       },
389
       // 查询
398
       // 查询
486
         console.log('eve',eve);
495
         console.log('eve',eve);
487
       },
496
       },
488
       // 详情数据源
497
       // 详情数据源
489
-      Getdialyzerdetail(name){
490
-        const params={
491
-          dialyzer:name,
492
-          start_date:this.start_date,
493
-          end_date:this.end_date,
498
+      Getdialyzerdetail(add){
499
+        const params ={
500
+          start_time:this.start_date,
501
+          end_time:this.end_date,
502
+          add_type:add,
503
+          dry_type:this.dry_value,
504
+          after_type:this.after_value,
505
+          keyword:this.Patient_name,
494
           page:this.currentPage,
506
           page:this.currentPage,
495
           limit:this.limit,
507
           limit:this.limit,
496
         }
508
         }
497
-        Getdialyzerdetail(params).then(response =>{
509
+        Getweightdetail(params).then(response =>{
498
           if(response.data.state == 1){
510
           if(response.data.state == 1){
499
-            const list = response.data.data.prescriptions
511
+            const list = response.data.data.list
500
             const table=[]
512
             const table=[]
501
-            list.forEach((item,index)=>{
502
-              const obj ={
503
-                index:index+1,
504
-                dialysis_no:item.patient.dialysis_no,
505
-                name:item.patient.name,
506
-                date:this.getTime(item.record_date),
507
-                mode_name:this.getmode(item.mode_id),
508
-                dialyszers:item.dialysis_dialyszers +'  '+ item.dialysis_irrigation+'  '+item.dialysis_strainer
509
-                // dialyszers:item.dialysis_dialyszers || item.dialysis_irrigation || item.dialysis_strainer
510
-              }
511
-              table.push(obj)
512
-            })
513
-            this.tableData = table
514
-            this.total = response.data.data.total
513
+            if(list.length>0){
514
+              list.forEach((item,index)=>{
515
+                const obj ={
516
+                  index:index+1,
517
+                  dialysis_no:item.dialysis_no,
518
+                  name:item.patient_name,
519
+                  sex:this.getgender(item.gender),
520
+                  age:item.age,
521
+                  date:this.getTime(item.assessment_date),
522
+                  dry_weight:item.dry_weight,
523
+                  last_weight_after:item.last_weight_after,
524
+                  weight_before:item.weight_before,
525
+                  weight_add:item.weight_add,
526
+                  weight_after:item.weight_after
527
+                }
528
+                table.push(obj)
529
+              })
530
+              this.tableData = table
531
+              this.total = response.data.data.total
532
+            }
515
           }
533
           }
516
           console.log('77777',response);
534
           console.log('77777',response);
517
         })
535
         })
624
         this.limit = val
642
         this.limit = val
625
         this.Getdialyzerdetail(this.getdialyze(this.dialyze_value))
643
         this.Getdialyzerdetail(this.getdialyze(this.dialyze_value))
626
       },
644
       },
627
-      // 透析模式
628
-      getmode(ids){
629
-        const modes=this.modearr
630
-        for(let i in modes){
631
-          if(ids == modes[i].id){
632
-            return modes[i].name
633
-          }
645
+      // 性别
646
+      getgender(ids){
647
+        if(ids ==1){
648
+          return "男"
649
+        }else{
650
+          return "女"
634
         }
651
         }
635
       },
652
       },
636
        // 转换时间
653
        // 转换时间
655
         }
672
         }
656
         return new Blob([u8arr], { type: mime });
673
         return new Blob([u8arr], { type: mime });
657
       },
674
       },
658
-      // 全部透析器
659
-      Getdialyzerconfig(){
660
-        Getdialyzerconfig().then(response =>{
661
-          console.log('666666',response);
662
-        })
663
-      },
664
       getdialyze(val){
675
       getdialyze(val){
665
         const option = this.dialyze_options
676
         const option = this.dialyze_options
666
         for(let i in option){
677
         for(let i in option){
675
     },
686
     },
676
     created(){
687
     created(){
677
       this.start_date = this.getFirstDayOfMonth(new Date())
688
       this.start_date = this.getFirstDayOfMonth(new Date())
678
-      this.Getdialyzerconfig()
689
+
679
     },
690
     },
680
 
691
 
681
   }
692
   }

+ 64 - 104
src/xt_pages/Dialysisanalysis/weightblood/components/dry_weight.vue 查看文件

149
                 label="年龄">
149
                 label="年龄">
150
               </el-table-column>
150
               </el-table-column>
151
               <el-table-column
151
               <el-table-column
152
-                prop="dialysis_date"
152
+                prop="dry"
153
                 label="干体重"
153
                 label="干体重"
154
                 width="">
154
                 width="">
155
               </el-table-column>
155
               </el-table-column>
156
-             
156
+
157
             </el-table>
157
             </el-table>
158
           </div>
158
           </div>
159
           <div style="text-align:right;margin-top: 10px;">
159
           <div style="text-align:right;margin-top: 10px;">
180
 import * as echarts from 'echarts';
180
 import * as echarts from 'echarts';
181
 import XLSX from 'xlsx';
181
 import XLSX from 'xlsx';
182
 import { uParseTime } from "@/utils/tools";
182
 import { uParseTime } from "@/utils/tools";
183
-import {Getdialysistreatfinish,Getdialysistreatdetail} from '../../../../api/qcd'
183
+import {Getpatinetweight,Getweightdetail} from '../../../../api/qcd'
184
 import {getAllNurseList} from '@/api/fallassement'
184
 import {getAllNurseList} from '@/api/fallassement'
185
 import { getAllDoctorList} from "@/api/device"
185
 import { getAllDoctorList} from "@/api/device"
186
 import html2canvas from "html2canvas"
186
 import html2canvas from "html2canvas"
201
         limit:50,
201
         limit:50,
202
         total:0,
202
         total:0,
203
         tableData:[],
203
         tableData:[],
204
-        // status_options:[],
204
+        status_options:[],
205
         nurseList:[],
205
         nurseList:[],
206
         operators:[],
206
         operators:[],
207
         docList:[],
207
         docList:[],
208
-        status_options:[{value:1,label:'达到透析处方时间'},{value:2,label:'超出处方时间'},{value:3,label:'未到达处方时间'}],
209
-        // status_options:[{value:1,label:'待定卧床'},{value:2,label:'<40KG'},{value:3,label:'40-50KG'},
210
-        //                 {value:4,label:'50-60KG'},{value:5,label:'<60-70KG'},{value:6,label:'>70KG'}
211
-        //                 ],
208
+        // status_options:[{value:1,label:'小于40kg'},{value:2,label:'40~50kg'},{value:3,label:'60~70kg'},
209
+        //                 {value:4,label:'大于70kg'},{value:5,label:'未知'}],
210
+
212
         date_options:[{value:1,label:'最近七天'},{value:2,label:'本周'},{value:3,label:'上周'},{value:4,label:'本月'},
211
         date_options:[{value:1,label:'最近七天'},{value:2,label:'本周'},{value:3,label:'上周'},{value:4,label:'本月'},
213
                       {value:5,label:'上月'},{value:6,label:'本年'},{value:7,label:'上一年'}
212
                       {value:5,label:'上月'},{value:6,label:'本年'},{value:7,label:'上一年'}
214
         ],
213
         ],
234
         var chartDom = document.getElementById('mychart')
233
         var chartDom = document.getElementById('mychart')
235
         var myChart = echarts.init(chartDom);
234
         var myChart = echarts.init(chartDom);
236
         const params={
235
         const params={
237
-          start_date:this.start_date,
238
-          end_date:this.end_date
236
+          start_time:this.start_date,
237
+          end_time:this.end_date,
238
+          statistics_type:1,
239
         }
239
         }
240
-        Getdialysistreatfinish(params).then(response =>{
240
+        Getpatinetweight(params).then(response =>{
241
           if(response.data.state ==1){
241
           if(response.data.state ==1){
242
-            const list = response.data.data.data
242
+            const list = response.data.data.list
243
             const xAxis = []
243
             const xAxis = []
244
             const yAxis = []
244
             const yAxis = []
245
-
246
-            const total = response.data.data.total
245
+            var option =[]
246
+            var total = 0
247
             for(let key in list){
247
             for(let key in list){
248
               const obj={
248
               const obj={
249
-                name:key,
250
-                value:list[key]
249
+                name:list[key].name,
250
+                value:list[key].total
251
               }
251
               }
252
+              total = total + list[key].total
252
               xAxis.push(obj)
253
               xAxis.push(obj)
253
-              yAxis.push(key)
254
+              yAxis.push(list[key].name)
255
+              const objs = {
256
+                value:(key*1)+1,
257
+                label:list[key].name
258
+              }
259
+              option.push(objs)
254
             }
260
             }
261
+            this.status_options = option
255
             const status = []
262
             const status = []
256
-            // for(let i in yAxis){
257
-            //   const obj ={
258
-            //     value:(i*1)+1,
259
-            //     label:yAxis[i]
260
-            //   }
261
-            //   status.push(obj)
262
-            // }
263
-            // this.status_options = status
264
-            console.log('this.status_options',this.status_options);
263
+            console.log('this.status_options',response.data.data);
265
             const option = {
264
             const option = {
266
                 title:{
265
                 title:{
267
-                  text:'总数'+total,
266
+                  text:'总数'+total+'人',
268
                   left:'5%',
267
                   left:'5%',
269
                   bottom:'5%',
268
                   bottom:'5%',
270
                   textStyle:{
269
                   textStyle:{
322
             myChart.setOption(option);
321
             myChart.setOption(option);
323
             myChart.on('click',params =>{
322
             myChart.on('click',params =>{
324
               this.complete_dialog = true
323
               this.complete_dialog = true
325
-              console.log('bbbb',params);
326
-              var status_id =''
324
+              console.log('bbbb',params,this.status_options);
325
+              // var status_val = ''
327
               for(let i in this.status_options){
326
               for(let i in this.status_options){
328
                 if(params.data.name == this.status_options[i].label){
327
                 if(params.data.name == this.status_options[i].label){
329
-                  status_id = this.status_options[i].value
328
+                  this.status_value = this.status_options[i].value
330
                 }
329
                 }
331
               }
330
               }
332
-              this.getdetail(status_id)
331
+              console.log(' this.status_value', this.status_value);
332
+
333
+              this.getdetail(this.status_value)
333
             })
334
             })
334
           }
335
           }
335
         })
336
         })
372
       // 导出excel
373
       // 导出excel
373
       derive_click(){
374
       derive_click(){
374
         let tableData = [
375
         let tableData = [
375
-          ['序号', '透析号', '患者姓名', '年龄','透析日期', '处方透析时长', '实际透析时长', '实际差(min)', '主治医生', '主治护士']//导出表头
376
+          ['序号', '透析号', '患者姓名', '年龄','干体重']//导出表头
376
         ]
377
         ]
377
         this.tableData.forEach((item,index) =>{
378
         this.tableData.forEach((item,index) =>{
378
           let rowdata=[]
379
           let rowdata=[]
381
             item.dialysis_no,
382
             item.dialysis_no,
382
             item.patient_name,
383
             item.patient_name,
383
             item.age,
384
             item.age,
384
-            item.dialysis_date,
385
-            item.dialysis_duration,
386
-            item.actual_duration,
387
-            item.diff,
388
-            item.doctor,
389
-            item.nurse,
385
+            item.dry,
390
           ]
386
           ]
391
           tableData.push(rowdata)
387
           tableData.push(rowdata)
392
         })
388
         })
393
         let workSheet = XLSX.utils.aoa_to_sheet(tableData);
389
         let workSheet = XLSX.utils.aoa_to_sheet(tableData);
394
         let bookNew = XLSX.utils.book_new();
390
         let bookNew = XLSX.utils.book_new();
395
-        XLSX.utils.book_append_sheet(bookNew, workSheet, '透析治疗完成率') // 工作簿名称
396
-        let name = '透析治疗完成率'+ '.xlsx'
391
+        XLSX.utils.book_append_sheet(bookNew, workSheet, '患者干体重分析') // 工作簿名称
392
+        let name = '患者干体重分析'+ '.xlsx'
397
         XLSX.writeFile(bookNew, name) // 保存的文件名
393
         XLSX.writeFile(bookNew, name) // 保存的文件名
398
       },
394
       },
399
       // 详情数据源
395
       // 详情数据源
400
-      getdetail(mode){
396
+      getdetail(dry){
401
         const params ={
397
         const params ={
402
-          start_date:this.start_date,
403
-          end_date:this.end_date,
404
-          mode:mode,
398
+          start_time:this.start_date,
399
+          end_time:this.end_date,
400
+          add_type:0,
401
+          dry_type:dry,
402
+          after_type:0,
403
+          keyword:'',
405
           page:this.currentPage,
404
           page:this.currentPage,
406
           limit:this.limit,
405
           limit:this.limit,
407
         }
406
         }
408
-        Getdialysistreatdetail(params).then(response =>{
409
-          if(response.data.state){
407
+        Getweightdetail(params).then(response =>{
408
+          if(response.data.state ==1){
410
             const list = response.data.data.list
409
             const list = response.data.data.list
411
-            const xAxis = []
410
+            // const xAxis = []
412
             const table = []
411
             const table = []
413
-            list.forEach((item,index) =>{
414
-              const obj={
415
-                index:index+1,
416
-                dialysis_no:item.dialysis_no,
417
-                patient_name:item.patient_name,
418
-                age:this.analyzeIDCard(item.id_card_no),
419
-                dialysis_date:item.dialysis_date.split('T')[0],
420
-                dialysis_duration:item.dialysis_duration,
421
-                actual_duration:item.actual_duration,
422
-                diff:item.diff,
423
-                doctor:this.getdoctor(item.doctor),
424
-                nurse:this.getnurse(item.nurse)
425
-              }
426
-              table.push(obj)
427
-            })
428
-            this.tableData = table
429
-            this.total = response.data.data.total
412
+            if(list.length >0){
413
+              list.forEach((item,index) =>{
414
+                const obj={
415
+                  index:index+1,
416
+                  dialysis_no:item.dialysis_no,
417
+                  patient_name:item.patient_name,
418
+                  age:item.age,
419
+                  dry:item.dry_weight,
420
+                }
421
+                table.push(obj)
422
+              })
423
+              this.tableData = table
424
+              this.total = response.data.data.total
425
+            }
430
           }
426
           }
431
-          console.log('55555',response);
427
+          console.log('555553333干体重',response);
432
         })
428
         })
433
       },
429
       },
434
       // 选择日期
430
       // 选择日期
660
         }
656
         }
661
 
657
 
662
       },
658
       },
663
-      // 护士
664
-      getAllNurseList(){
665
-        getAllNurseList().then(response=>{
666
-           if(response.data.state ==1){
667
-             var nurseList  = response.data.data.nurseList
668
-            console.log('0000',nurseList);
669
-             this.nurseList =nurseList
670
-           }
671
-        })
672
-      },
673
-      // 医生
674
-      getAllDoctorList(){
675
-        getAllDoctorList().then(response=>{
676
-          if(response.data.state == 1){
677
-              var list = response.data.data.list
678
-              console.log("list222222",list)
679
-              this.docList = list
680
-              this.operators = response.data.data.operators
681
-          }
682
-        })
683
-      },
684
-      getnurse(ids){
685
-        const nurse = this.nurseList
686
-        for(let i in nurse){
687
-          if(ids==nurse[i].admin_user_id){
688
-            return nurse[i].user_name
689
-          }
690
-        }
691
-      },
692
-      getdoctor(ids){
693
-        const doctor = this.docList
694
-        for(let i in doctor){
695
-          if(ids == doctor[i].admin_user_id){
696
-            return doctor[i].user_name
697
-          }
698
-        }
699
-      }
659
+
700
     },
660
     },
701
     mounted(){
661
     mounted(){
702
       this.getecharts()
662
       this.getecharts()
703
     },
663
     },
704
     created(){
664
     created(){
705
       this.start_date = this.getFirstDayOfMonth(new Date())
665
       this.start_date = this.getFirstDayOfMonth(new Date())
706
-      this.getAllNurseList()
707
-      this.getAllDoctorList()
666
+      // this.getAllNurseList()
667
+      // this.getAllDoctorList()
708
     },
668
     },
709
 
669
 
710
   }
670
   }

+ 109 - 105
src/xt_pages/Dialysisanalysis/weightblood/components/list_denominator.vue 查看文件

69
       <el-dialog
69
       <el-dialog
70
         title="详情"
70
         title="详情"
71
         :visible.sync="dialyze_dialog"
71
         :visible.sync="dialyze_dialog"
72
-        width="80%">
72
+        width="90%">
73
         <div>
73
         <div>
74
           <div style="display: flex;margin-bottom: 20px;">
74
           <div style="display: flex;margin-bottom: 20px;">
75
-            <div style="flex: 2;display: flex;flex-wrap:wrap">
75
+            <div style="flex: 5;display: flex;flex-wrap:wrap">
76
               <div>
76
               <div>
77
                 日期:
77
                 日期:
78
                 <el-select v-model="date_value" @change="datachange" placeholder="请选择" style="width: 100px;">
78
                 <el-select v-model="date_value" @change="datachange" placeholder="请选择" style="width: 100px;">
103
               </div>
103
               </div>
104
               <div>
104
               <div>
105
                 体重增长:
105
                 体重增长:
106
-                <el-select v-model="dialyze_value" placeholder="请选择" style="width: 100px;">
106
+                <el-select v-model="weight_value" placeholder="请选择" style="width: 100px;">
107
                   <el-option :key="0" label="不限" :value="0"></el-option>
107
                   <el-option :key="0" label="不限" :value="0"></el-option>
108
                   <el-option
108
                   <el-option
109
-                    v-for="item in dialyze_options"
110
-                    :key="item.id"
111
-                    :label="item.name"
112
-                    :value="item.id">
109
+                    v-for="item in weight_gain"
110
+                    :key="item.value"
111
+                    :label="item.label"
112
+                    :value="item.value">
113
                   </el-option>
113
                   </el-option>
114
                 </el-select>
114
                 </el-select>
115
               </div>
115
               </div>
116
               <div>
116
               <div>
117
                 干体重:
117
                 干体重:
118
-                <el-select v-model="dialyze_value" placeholder="请选择" style="width: 100px;">
118
+                <el-select v-model="dry_value" placeholder="请选择" style="width: 100px;">
119
                   <el-option :key="0" label="不限" :value="0"></el-option>
119
                   <el-option :key="0" label="不限" :value="0"></el-option>
120
                   <el-option
120
                   <el-option
121
-                    v-for="item in dialyze_options"
122
-                    :key="item.id"
123
-                    :label="item.name"
124
-                    :value="item.id">
121
+                    v-for="item in status_options"
122
+                    :key="item.value"
123
+                    :label="item.label"
124
+                    :value="item.value">
125
                   </el-option>
125
                   </el-option>
126
                 </el-select>
126
                 </el-select>
127
               </div>
127
               </div>
128
               <div>
128
               <div>
129
                 透后体重:
129
                 透后体重:
130
-                <el-select v-model="dialyze_value" placeholder="请选择" style="width: 100px;">
130
+                <el-select v-model="after_value" placeholder="请选择" style="width: 100px;">
131
                   <el-option :key="0" label="不限" :value="0"></el-option>
131
                   <el-option :key="0" label="不限" :value="0"></el-option>
132
                   <el-option
132
                   <el-option
133
-                    v-for="item in dialyze_options"
134
-                    :key="item.id"
135
-                    :label="item.name"
136
-                    :value="item.id">
133
+                    v-for="item in after_options"
134
+                    :key="item.value"
135
+                    :label="item.label"
136
+                    :value="item.value">
137
                   </el-option>
137
                   </el-option>
138
                 </el-select>
138
                 </el-select>
139
               </div>
139
               </div>
140
               <div >
140
               <div >
141
-                <el-input v-model="input" placeholder="搜索患者姓名"></el-input>
141
+                <el-input v-model="Patient_name" placeholder="搜索患者姓名" style="width: 120px;"></el-input>
142
               </div>
142
               </div>
143
             </div>
143
             </div>
144
             <div style="flex: 1;">
144
             <div style="flex: 1;">
168
               label="患者姓名">
168
               label="患者姓名">
169
             </el-table-column>
169
             </el-table-column>
170
             <el-table-column
170
             <el-table-column
171
-              prop="name"
171
+              prop="sex"
172
               label="性别"
172
               label="性别"
173
               width="">
173
               width="">
174
             </el-table-column>
174
             </el-table-column>
175
             <el-table-column
175
             <el-table-column
176
-              prop="name"
176
+              prop="age"
177
               label="年龄"
177
               label="年龄"
178
               width="">
178
               width="">
179
             </el-table-column>
179
             </el-table-column>
183
               width="">
183
               width="">
184
             </el-table-column>
184
             </el-table-column>
185
             <el-table-column
185
             <el-table-column
186
-              prop="mode_name"
186
+              prop="dry_weight"
187
               label="干体重"
187
               label="干体重"
188
               width="">
188
               width="">
189
             </el-table-column>
189
             </el-table-column>
190
             <el-table-column
190
             <el-table-column
191
-              prop="dialyszers"
191
+              prop="last_weight_after"
192
               label="前次透后体重">
192
               label="前次透后体重">
193
             </el-table-column>
193
             </el-table-column>
194
             <el-table-column
194
             <el-table-column
195
-              prop="date"
195
+              prop="weight_before"
196
               label="透前体重"
196
               label="透前体重"
197
               width="">
197
               width="">
198
             </el-table-column>
198
             </el-table-column>
199
             <el-table-column
199
             <el-table-column
200
-              prop="mode_name"
200
+              prop="weight_add"
201
               label="体重增加"
201
               label="体重增加"
202
               width="">
202
               width="">
203
             </el-table-column>
203
             </el-table-column>
204
             <el-table-column
204
             <el-table-column
205
-              prop="dialyszers"
205
+              prop="weight_after"
206
               label="透后体重">
206
               label="透后体重">
207
             </el-table-column>
207
             </el-table-column>
208
           </el-table>
208
           </el-table>
231
 import * as echarts from 'echarts';
231
 import * as echarts from 'echarts';
232
 import XLSX from 'xlsx';
232
 import XLSX from 'xlsx';
233
 import { uParseTime } from "@/utils/tools";
233
 import { uParseTime } from "@/utils/tools";
234
-import {Getdialyzer,Getdialyzerdetail,Getdialyzerconfig} from '../../../../api/qcd'
234
+import {Getpatinetweight,Getweightdetail} from '../../../../api/qcd'
235
 import { forEach } from 'jszip';
235
 import { forEach } from 'jszip';
236
 import html2canvas from "html2canvas"
236
 import html2canvas from "html2canvas"
237
   export default {
237
   export default {
251
         limit:50,
251
         limit:50,
252
         total:0,
252
         total:0,
253
         tableData:[],
253
         tableData:[],
254
-        dialyze_options:[],
254
+        weight_gain:[],
255
+        weight_value:0,
256
+        dry_value:0,
257
+        after_value:0,
258
+        after_options:[{value:1,label:'达到干体重'},{value:2,label:'未达到干体重'},{value:3,label:'其他或卧床'}],
259
+        Patient_name:'',
255
         date_options:[{value:1,label:'最近七天'},{value:2,label:'本周'},{value:3,label:'上周'},{value:4,label:'本月'},
260
         date_options:[{value:1,label:'最近七天'},{value:2,label:'本周'},{value:3,label:'上周'},{value:4,label:'本月'},
256
                       {value:5,label:'上月'},{value:6,label:'本年'},{value:7,label:'上一年'}
261
                       {value:5,label:'上月'},{value:6,label:'本年'},{value:7,label:'上一年'}
257
         ],
262
         ],
258
-        modearr:[{ id: 1, name: 'HD' },{ id: 2, name: 'HDF' },{ id: 3, name: 'HD + HP' },{ id: 4, name: 'HP' },
259
-          { id: 5, name: 'HF' },{ id: 6, name: 'SCUF' },{ id: 7, name: 'IUF' },{ id: 8, name: 'HFHD' },{ id: 9, name: 'HFHD+HP' },
260
-          { id: 10, name: 'PHF' },{ id: 11, name: 'HFR' },{ id: 12, name: 'HDF+HP' },{ id: 13, name: 'CRRT' },{ id: 14, name: '腹水回输' },
261
-          { id:19, name:"IUF+HD"},{ id:20, name:"UF"},{ id:21, name:"HD+"},{ id:22, name:"血浆胆红素吸附+HDF"},{ id:23, name:"血浆胆红素吸附"},
262
-          { id:24, name:"I-HDF"},{ id:25, name:"HD高通"},{ id:26, name:"CVVH"},{ id:27, name:"CVVHD"},{ id:28, name:"CVVHDF"},{ id:29, name:"PE"},
263
-          { id:30, name:"血浆胆红素吸附+HP"},{ id:31, name:"HPD"},{ id:32, name:"HDP"},{ id:33, name:"HFD"},{ id:34, name:"HDF100"},
264
-          { id:35, name:"HDF600"},{ id:36, name:"HDF800"},{ id:37, name:"HDF1000"},
265
-        ],
263
+        status_options:[{value:1,label:'小于40kg'},{value:2,label:'40~50kg'},{value:3,label:'60~70kg'},
264
+                        {value:4,label:'大于70kg'},{value:5,label:'未知'}],
266
         date_mode_options:[{value:1,label:'按周'},{value:2,label:'按天'},{value:3,label:'按月'},{value:4,label:'按年'}],
265
         date_mode_options:[{value:1,label:'按周'},{value:2,label:'按天'},{value:3,label:'按月'},{value:4,label:'按年'}],
267
         source_options:[{value:1,label:'以开始透析为准'},{value:2,label:'以排班为准'}],
266
         source_options:[{value:1,label:'以开始透析为准'},{value:2,label:'以排班为准'}],
268
 
267
 
280
         var chartDom = document.getElementById('mychart')
279
         var chartDom = document.getElementById('mychart')
281
         var myChart = echarts.init(chartDom);
280
         var myChart = echarts.init(chartDom);
282
         const params ={
281
         const params ={
283
-          start_date:this.start_date,
284
-          end_date:this.end_date,
282
+          start_time:this.start_date,
283
+          end_time:this.end_date,
284
+          statistics_type:2,
285
         }
285
         }
286
-        Getdialyzer(params).then(response =>{
286
+        Getpatinetweight(params).then(response =>{
287
           console.log('ressponse',response.data.data);
287
           console.log('ressponse',response.data.data);
288
           if(response.data.state ==1){
288
           if(response.data.state ==1){
289
             console.log('bbbbbbbbb',response.data.data);
289
             console.log('bbbbbbbbb',response.data.data);
290
-            const list = response.data.data.data
290
+            const list = response.data.data.list
291
             const xAxis =[]
291
             const xAxis =[]
292
             const yAxis = []
292
             const yAxis = []
293
-            list.forEach(item =>{
294
-
295
-              xAxis.push(item.name)
296
-              yAxis.push(item.count)
297
-            })
298
-            this.bar_xAxis = xAxis
299
-            const options = []
300
-            for(let i in xAxis){
301
-              const arr ={
302
-                id:i+1,
303
-                name:xAxis[i]
293
+            const weight = []
294
+            for(let i in list){
295
+              xAxis.push(list[i].name)
296
+              yAxis.push(list[i].total)
297
+               const obj ={
298
+                value:i+1,
299
+                label:list[i].name
304
               }
300
               }
305
-              options.push(arr)
301
+              weight.push(obj)
306
             }
302
             }
307
-            this.dialyze_options = options
303
+            this.weight_gain = weight
304
+            this.bar_xAxis = xAxis
305
+
308
             const option = {
306
             const option = {
309
               xAxis: {
307
               xAxis: {
310
                 type: 'category',
308
                 type: 'category',
356
             myChart.on('click',params =>{
354
             myChart.on('click',params =>{
357
               this.dialyze_dialog = true
355
               this.dialyze_dialog = true
358
               console.log('vvvvv',params);
356
               console.log('vvvvv',params);
359
-              this.Getdialyzerdetail(params.name)
357
+              for(let i in this.weight_gain){
358
+                if(params.name = this.weight_gain[i].label){
359
+                  this.weight_value = this.weight_gain[i].value
360
+                }
361
+              }
362
+              this.Getdialyzerdetail(this.weight_value)
360
             })
363
             })
361
           }
364
           }
362
 
365
 
366
       // 导出excel
369
       // 导出excel
367
       exportExcel(){
370
       exportExcel(){
368
         let tableData = [
371
         let tableData = [
369
-          ['序号', '透析号', '患者姓名', '透析日期','透析模式', '透析器']//导出表头
372
+          ['序号', '透析号', '患者姓名','性别','年龄','透析日期','干体重','前次透后体重','透前体重','体重增加','透后体重',]//导出表头
370
         ]
373
         ]
371
         this.tableData.forEach((item,index) =>{
374
         this.tableData.forEach((item,index) =>{
372
           let rowdata=[]
375
           let rowdata=[]
374
             item.index,
377
             item.index,
375
             item.dialysis_no,
378
             item.dialysis_no,
376
             item.name,
379
             item.name,
380
+            item.sex,
381
+            item.age,
377
             item.date,
382
             item.date,
378
-            item.mode_name,
379
-            item.dialyszers,
383
+
384
+            item.dry_weight,
385
+            item.last_weight_after,
386
+            item.weight_before,
387
+            item.weight_add,
388
+            item.weight_after
389
+
380
           ]
390
           ]
381
           tableData.push(rowdata)
391
           tableData.push(rowdata)
382
         })
392
         })
383
         let workSheet = XLSX.utils.aoa_to_sheet(tableData);
393
         let workSheet = XLSX.utils.aoa_to_sheet(tableData);
384
         let bookNew = XLSX.utils.book_new();
394
         let bookNew = XLSX.utils.book_new();
385
-        XLSX.utils.book_append_sheet(bookNew, workSheet, '透析器使用统计') // 工作簿名称
386
-        let name = '透析器使用统计'+ '.xlsx'
395
+        XLSX.utils.book_append_sheet(bookNew, workSheet, '患者体重增长分析(以上次透后体重为分母)') // 工作簿名称
396
+        let name = '患者体重增长分析(以上次透后体重为分母)'+ '.xlsx'
387
         XLSX.writeFile(bookNew, name) // 保存的文件名
397
         XLSX.writeFile(bookNew, name) // 保存的文件名
388
       },
398
       },
389
       // 查询
399
       // 查询
392
       },
402
       },
393
       // 详情查询
403
       // 详情查询
394
       deil_click(){
404
       deil_click(){
395
-        this.Getdialyzerdetail(this.getdialyze(this.dialyze_value))
405
+        this.Getdialyzerdetail(this.weight_value)
396
       },
406
       },
397
        // 下载
407
        // 下载
398
       Download_click(){
408
       Download_click(){
486
         console.log('eve',eve);
496
         console.log('eve',eve);
487
       },
497
       },
488
       // 详情数据源
498
       // 详情数据源
489
-      Getdialyzerdetail(name){
490
-        const params={
491
-          dialyzer:name,
492
-          start_date:this.start_date,
493
-          end_date:this.end_date,
499
+      Getdialyzerdetail(add){
500
+        const params ={
501
+          start_time:this.start_date,
502
+          end_time:this.end_date,
503
+          add_type:add,
504
+          dry_type:this.dry_value,
505
+          after_type:this.after_value,
506
+          keyword:this.Patient_name,
494
           page:this.currentPage,
507
           page:this.currentPage,
495
           limit:this.limit,
508
           limit:this.limit,
496
         }
509
         }
497
-        Getdialyzerdetail(params).then(response =>{
510
+        Getweightdetail(params).then(response =>{
511
+          console.log('77777',response);
498
           if(response.data.state == 1){
512
           if(response.data.state == 1){
499
-            const list = response.data.data.prescriptions
513
+            const list = response.data.data.list
500
             const table=[]
514
             const table=[]
501
-            list.forEach((item,index)=>{
502
-              const obj ={
503
-                index:index+1,
504
-                dialysis_no:item.patient.dialysis_no,
505
-                name:item.patient.name,
506
-                date:this.getTime(item.record_date),
507
-                mode_name:this.getmode(item.mode_id),
508
-                dialyszers:item.dialysis_dialyszers +'  '+ item.dialysis_irrigation+'  '+item.dialysis_strainer
509
-                // dialyszers:item.dialysis_dialyszers || item.dialysis_irrigation || item.dialysis_strainer
510
-              }
511
-              table.push(obj)
512
-            })
513
-            this.tableData = table
514
-            this.total = response.data.data.total
515
+            if(list.length>0){
516
+              list.forEach((item,index)=>{
517
+                const obj ={
518
+                  index:index+1,
519
+                  dialysis_no:item.dialysis_no,
520
+                  name:item.patient_name,
521
+                  sex:this.getgender(item.gender),
522
+                  age:item.age,
523
+                  date:this.getTime(item.assessment_date),
524
+                  dry_weight:item.dry_weight,
525
+                  last_weight_after:item.last_weight_after,
526
+                  weight_before:item.weight_before,
527
+                  weight_add:item.weight_add,
528
+                  weight_after:item.weight_after
529
+                }
530
+                table.push(obj)
531
+              })
532
+              this.tableData = table
533
+              this.total = response.data.data.total
534
+            }
515
           }
535
           }
516
-          console.log('77777',response);
536
+
517
         })
537
         })
518
       },
538
       },
519
        // 首先定义一个getPreviousDate函数,方便调用
539
        // 首先定义一个getPreviousDate函数,方便调用
618
       },
638
       },
619
       handleCurrentChange(val){
639
       handleCurrentChange(val){
620
         this.currentPage = val
640
         this.currentPage = val
621
-        this.Getdialyzerdetail(this.getdialyze(this.dialyze_value))
641
+        this.Getdialyzerdetail(this.weight_value)
622
       },
642
       },
623
       handleSizeChange(val){
643
       handleSizeChange(val){
624
         this.limit = val
644
         this.limit = val
625
-        this.Getdialyzerdetail(this.getdialyze(this.dialyze_value))
645
+        this.Getdialyzerdetail(this.weight_value)
626
       },
646
       },
627
-      // 透析模式
628
-      getmode(ids){
629
-        const modes=this.modearr
630
-        for(let i in modes){
631
-          if(ids == modes[i].id){
632
-            return modes[i].name
633
-          }
647
+      // 性别
648
+      getgender(ids){
649
+        if(ids ==1){
650
+          return "男"
651
+        }else{
652
+          return "女"
634
         }
653
         }
635
       },
654
       },
636
        // 转换时间
655
        // 转换时间
655
         }
674
         }
656
         return new Blob([u8arr], { type: mime });
675
         return new Blob([u8arr], { type: mime });
657
       },
676
       },
658
-      // 全部透析器
659
-      Getdialyzerconfig(){
660
-        Getdialyzerconfig().then(response =>{
661
-          console.log('666666',response);
662
-        })
663
-      },
664
-      getdialyze(val){
665
-        const option = this.dialyze_options
666
-        for(let i in option){
667
-          if(val == option[i].id){
668
-            return option[i].name
669
-          }
670
-        }
671
-      }
672
     },
677
     },
673
     mounted(){
678
     mounted(){
674
       this.getecharts()
679
       this.getecharts()
675
     },
680
     },
676
     created(){
681
     created(){
677
       this.start_date = this.getFirstDayOfMonth(new Date())
682
       this.start_date = this.getFirstDayOfMonth(new Date())
678
-      this.Getdialyzerconfig()
679
     },
683
     },
680
 
684
 
681
   }
685
   }

+ 146 - 217
src/xt_pages/Dialysisanalysis/weightblood/components/weight_table.vue 查看文件

11
     <div class="app-container">
11
     <div class="app-container">
12
       <div class="page_patientControlAnalysis">
12
       <div class="page_patientControlAnalysis">
13
         <div style="display: flex;margin-bottom: 20px;">
13
         <div style="display: flex;margin-bottom: 20px;">
14
-          <div style="flex: 2;display: flex;flex-wrap:wrap">
14
+          <div style="flex: 6;display: flex;flex-wrap:wrap">
15
             <div>
15
             <div>
16
               日期:
16
               日期:
17
               <el-select v-model="date_value" @change="datachange" placeholder="请选择" style="width: 100px;">
17
               <el-select v-model="date_value" @change="datachange" placeholder="请选择" style="width: 100px;">
40
                 style="width: 150px;">
40
                 style="width: 150px;">
41
               </el-date-picker>
41
               </el-date-picker>
42
             </div>
42
             </div>
43
+
43
             <div>
44
             <div>
44
               体重增长:
45
               体重增长:
45
-              <el-select v-model="dialyze_value" placeholder="请选择" style="width: 100px;">
46
+              <el-select v-model="weight_value" placeholder="请选择" style="width: 100px;">
46
                 <el-option :key="0" label="不限" :value="0"></el-option>
47
                 <el-option :key="0" label="不限" :value="0"></el-option>
47
                 <el-option
48
                 <el-option
48
-                  v-for="item in dialyze_options"
49
-                  :key="item.id"
50
-                  :label="item.name"
51
-                  :value="item.id">
49
+                  v-for="item in weight_gain"
50
+                  :key="item.value"
51
+                  :label="item.label"
52
+                  :value="item.value">
52
                 </el-option>
53
                 </el-option>
53
               </el-select>
54
               </el-select>
54
             </div>
55
             </div>
55
             <div>
56
             <div>
56
               干体重:
57
               干体重:
57
-              <el-select v-model="dialyze_value" placeholder="请选择" style="width: 100px;">
58
+              <el-select v-model="dry_value" placeholder="请选择" style="width: 100px;">
58
                 <el-option :key="0" label="不限" :value="0"></el-option>
59
                 <el-option :key="0" label="不限" :value="0"></el-option>
59
                 <el-option
60
                 <el-option
60
-                  v-for="item in dialyze_options"
61
-                  :key="item.id"
62
-                  :label="item.name"
63
-                  :value="item.id">
61
+                  v-for="item in status_options"
62
+                  :key="item.value"
63
+                  :label="item.label"
64
+                  :value="item.value">
64
                 </el-option>
65
                 </el-option>
65
               </el-select>
66
               </el-select>
66
             </div>
67
             </div>
67
             <div>
68
             <div>
68
               透后体重:
69
               透后体重:
69
-              <el-select v-model="dialyze_value" placeholder="请选择" style="width: 100px;">
70
+              <el-select v-model="after_value" placeholder="请选择" style="width: 100px;">
70
                 <el-option :key="0" label="不限" :value="0"></el-option>
71
                 <el-option :key="0" label="不限" :value="0"></el-option>
71
                 <el-option
72
                 <el-option
72
-                  v-for="item in dialyze_options"
73
-                  :key="item.id"
74
-                  :label="item.name"
75
-                  :value="item.id">
73
+                  v-for="item in after_options"
74
+                  :key="item.value"
75
+                  :label="item.label"
76
+                  :value="item.value">
76
                 </el-option>
77
                 </el-option>
77
               </el-select>
78
               </el-select>
78
             </div>
79
             </div>
79
             <div >
80
             <div >
80
-              <el-input v-model="input" placeholder="搜索患者姓名"></el-input>
81
+              <el-input v-model="Patient_name" placeholder="搜索患者姓名"></el-input>
81
             </div>
82
             </div>
82
           </div>
83
           </div>
83
           <div style="flex: 1;">
84
           <div style="flex: 1;">
89
         </div>
90
         </div>
90
 
91
 
91
         <el-table :data="tableData" border style="width: 100%"
92
         <el-table :data="tableData" border style="width: 100%"
92
-        :header-cell-style="{textAlign: 'center'}"
93
-        :cell-style="{ textAlign: 'center' }"
94
-        height="380">
95
-          <el-table-column
96
-            prop="index"
97
-            label="序号"
98
-            width="">
99
-          </el-table-column>
100
-          <el-table-column
101
-            prop="dialysis_no"
102
-            label="透析号"
103
-            width="">
104
-          </el-table-column>
105
-          <el-table-column
106
-            prop="name"
107
-            label="患者姓名">
108
-          </el-table-column>
109
-          <el-table-column
110
-            prop="name"
111
-            label="性别"
112
-            width="">
113
-          </el-table-column>
114
-          <el-table-column
115
-            prop="name"
116
-            label="年龄"
117
-            width="">
118
-          </el-table-column>
119
-          <el-table-column
120
-            prop="date"
121
-            label="透析日期"
122
-            width="">
123
-          </el-table-column>
124
-          <el-table-column
125
-            prop="mode_name"
126
-            label="干体重"
127
-            width="">
128
-          </el-table-column>
129
-          <el-table-column
130
-            prop="dialyszers"
131
-            label="前次透后体重">
132
-          </el-table-column>
133
-          <el-table-column
134
-            prop="date"
135
-            label="透前体重"
136
-            width="">
137
-          </el-table-column>
138
-          <el-table-column
139
-            prop="mode_name"
140
-            label="体重增加"
141
-            width="">
142
-          </el-table-column>
143
-          <el-table-column
144
-            prop="dialyszers"
145
-            label="透后体重">
146
-          </el-table-column>
147
-        </el-table>
93
+          :header-cell-style="{textAlign: 'center'}"
94
+          :cell-style="{ textAlign: 'center' }"
95
+          height="380">
96
+            <el-table-column
97
+              prop="index"
98
+              label="序号"
99
+              width="">
100
+            </el-table-column>
101
+            <el-table-column
102
+              prop="dialysis_no"
103
+              label="透析号"
104
+              width="">
105
+            </el-table-column>
106
+            <el-table-column
107
+              prop="name"
108
+              label="患者姓名">
109
+            </el-table-column>
110
+            <el-table-column
111
+              prop="sex"
112
+              label="性别"
113
+              width="">
114
+            </el-table-column>
115
+            <el-table-column
116
+              prop="age"
117
+              label="年龄"
118
+              width="">
119
+            </el-table-column>
120
+            <el-table-column
121
+              prop="date"
122
+              label="透析日期"
123
+              width="">
124
+            </el-table-column>
125
+            <el-table-column
126
+              prop="dry_weight"
127
+              label="干体重"
128
+              width="">
129
+            </el-table-column>
130
+            <el-table-column
131
+              prop="last_weight_after"
132
+              label="前次透后体重">
133
+            </el-table-column>
134
+            <el-table-column
135
+              prop="weight_before"
136
+              label="透前体重"
137
+              width="">
138
+            </el-table-column>
139
+            <el-table-column
140
+              prop="weight_add"
141
+              label="体重增加"
142
+              width="">
143
+            </el-table-column>
144
+            <el-table-column
145
+              prop="weight_after"
146
+              label="透后体重">
147
+            </el-table-column>
148
+          </el-table>
148
         <div style="text-align: right;margin-top: 10px;">
149
         <div style="text-align: right;margin-top: 10px;">
149
           <el-pagination
150
           <el-pagination
150
             @size-change="handleSizeChange"
151
             @size-change="handleSizeChange"
160
     </div>
161
     </div>
161
 
162
 
162
     <!-- 弹窗 -->
163
     <!-- 弹窗 -->
163
-   
164
+
164
   </div>
165
   </div>
165
 </template>
166
 </template>
166
 <script>
167
 <script>
167
 import * as echarts from 'echarts';
168
 import * as echarts from 'echarts';
168
 import XLSX from 'xlsx';
169
 import XLSX from 'xlsx';
169
 import { uParseTime } from "@/utils/tools";
170
 import { uParseTime } from "@/utils/tools";
170
-import {Getdialyzer,Getdialyzerdetail,Getdialyzerconfig} from '../../../../api/qcd'
171
+import {Getweightdetail} from '../../../../api/qcd'
171
 import { forEach } from 'jszip';
172
 import { forEach } from 'jszip';
172
 import html2canvas from "html2canvas"
173
 import html2canvas from "html2canvas"
173
   export default {
174
   export default {
187
         limit:50,
188
         limit:50,
188
         total:0,
189
         total:0,
189
         tableData:[],
190
         tableData:[],
190
-        dialyze_options:[],
191
+
192
+        weight_gain:[{value:1,label:'体重增长<=3%'},{value:2,label:'3%<体重增长<5%'},{value:3,label:'体重增长>=5%'}],
193
+        weight_value:0,
194
+        dry_value:0,
195
+        after_value:0,
196
+        after_options:[{value:1,label:'达到干体重'},{value:2,label:'未达到干体重'},{value:3,label:'其他或卧床'}],
197
+        Patient_name:'',
191
         date_options:[{value:1,label:'最近七天'},{value:2,label:'本周'},{value:3,label:'上周'},{value:4,label:'本月'},
198
         date_options:[{value:1,label:'最近七天'},{value:2,label:'本周'},{value:3,label:'上周'},{value:4,label:'本月'},
192
                       {value:5,label:'上月'},{value:6,label:'本年'},{value:7,label:'上一年'}
199
                       {value:5,label:'上月'},{value:6,label:'本年'},{value:7,label:'上一年'}
193
         ],
200
         ],
194
-        modearr:[{ id: 1, name: 'HD' },{ id: 2, name: 'HDF' },{ id: 3, name: 'HD + HP' },{ id: 4, name: 'HP' },
195
-          { id: 5, name: 'HF' },{ id: 6, name: 'SCUF' },{ id: 7, name: 'IUF' },{ id: 8, name: 'HFHD' },{ id: 9, name: 'HFHD+HP' },
196
-          { id: 10, name: 'PHF' },{ id: 11, name: 'HFR' },{ id: 12, name: 'HDF+HP' },{ id: 13, name: 'CRRT' },{ id: 14, name: '腹水回输' },
197
-          { id:19, name:"IUF+HD"},{ id:20, name:"UF"},{ id:21, name:"HD+"},{ id:22, name:"血浆胆红素吸附+HDF"},{ id:23, name:"血浆胆红素吸附"},
198
-          { id:24, name:"I-HDF"},{ id:25, name:"HD高通"},{ id:26, name:"CVVH"},{ id:27, name:"CVVHD"},{ id:28, name:"CVVHDF"},{ id:29, name:"PE"},
199
-          { id:30, name:"血浆胆红素吸附+HP"},{ id:31, name:"HPD"},{ id:32, name:"HDP"},{ id:33, name:"HFD"},{ id:34, name:"HDF100"},
200
-          { id:35, name:"HDF600"},{ id:36, name:"HDF800"},{ id:37, name:"HDF1000"},
201
-        ],
201
+        status_options:[{value:1,label:'小于40kg'},{value:2,label:'40~50kg'},{value:3,label:'60~70kg'},
202
+                        {value:4,label:'大于70kg'},{value:5,label:'未知'}],
202
         date_mode_options:[{value:1,label:'按周'},{value:2,label:'按天'},{value:3,label:'按月'},{value:4,label:'按年'}],
203
         date_mode_options:[{value:1,label:'按周'},{value:2,label:'按天'},{value:3,label:'按月'},{value:4,label:'按年'}],
203
         source_options:[{value:1,label:'以开始透析为准'},{value:2,label:'以排班为准'}],
204
         source_options:[{value:1,label:'以开始透析为准'},{value:2,label:'以排班为准'}],
204
 
205
 
205
 
206
 
206
-        input:'',
207
+        // weight_gain:[],
208
+        weight_value:0,
209
+        dry_value:0,
210
+        after_value:0,
211
+        // after_options:[],
212
+        Patient_name:'',
207
       }
213
       }
208
     },
214
     },
209
     methods:{
215
     methods:{
211
       return_click(){
217
       return_click(){
212
         this.$router.push('/Dialysisanalysis/qualitycontrol/weightblood')
218
         this.$router.push('/Dialysisanalysis/qualitycontrol/weightblood')
213
       },
219
       },
214
-      // 数据源
215
-      getecharts(){
216
-        var chartDom = document.getElementById('mychart')
217
-        var myChart = echarts.init(chartDom);
218
-        const params ={
219
-          start_date:this.start_date,
220
-          end_date:this.end_date,
221
-        }
222
-        Getdialyzer(params).then(response =>{
223
-          console.log('ressponse',response.data.data);
224
-          if(response.data.state ==1){
225
-            console.log('bbbbbbbbb',response.data.data);
226
-            const list = response.data.data.data
227
-            const xAxis =[]
228
-            const yAxis = []
229
-            list.forEach(item =>{
230
-
231
-              xAxis.push(item.name)
232
-              yAxis.push(item.count)
233
-            })
234
-            this.bar_xAxis = xAxis
235
-            const options = []
236
-            for(let i in xAxis){
237
-              const arr ={
238
-                id:i+1,
239
-                name:xAxis[i]
240
-              }
241
-              options.push(arr)
242
-            }
243
-            this.dialyze_options = options
244
-            const option = {
245
-              xAxis: {
246
-                type: 'category',
247
-                data: xAxis,
248
-                axisLabel:{
249
-                  interval:0,
250
-                }
251
-              },
252
-              yAxis: {
253
-                type: 'value'
254
-              },
255
-              series: [
256
-                {
257
-                  data:yAxis ,
258
-                  type: 'bar',
259
-                  barWidth: '25%',
260
-                  label: {
261
-                    normal: {
262
-                      show: true,
263
-                      position: 'top',
264
-                      formatter: '{c}',
265
-                      textStyle:{
266
-                        color: 'black',//字体颜色
267
-                        fontSize: 13//字体大小
268
-                      }
269
-                    },
270
-                  },
271
-                  itemStyle:{
272
-                    normal:{
273
-                      color:function (params){
274
-                        // const colorarr=['#FFA333','#A155E8','#6D91FF','#A233A2'];
275
-                        var colorarr = [["#A9E0F3", "#9FBDFC"],["#FFD7C0", "#FF9994"]]
276
-                        var index = params.dataIndex;
277
-                        if (params.dataIndex >= colorarr.length) {
278
-                          index = params.dataIndex % colorarr.length;
279
-                        }
280
-                        return new echarts.graphic.LinearGradient(0, 0, 0, 1, [
281
-                          { offset: 0, color: colorarr[index][0] },
282
-                          // { offset: 0.5, color: colorList[index][1] },
283
-                          { offset: 1, color: colorarr[index][1] }
284
-                        ]);
285
-                      }
286
-                    }
287
-                  }
288
-                }
289
-              ]
290
-            }
291
-            myChart.setOption(option);
292
-            myChart.on('click',params =>{
293
-              this.dialyze_dialog = true
294
-              console.log('vvvvv',params);
295
-              this.Getdialyzerdetail(params.name)
296
-            })
297
-          }
298
-
299
-        })
300
-
301
-      },
302
       // 导出excel
220
       // 导出excel
303
       exportExcel(){
221
       exportExcel(){
304
         let tableData = [
222
         let tableData = [
305
-          ['序号', '透析号', '患者姓名', '透析日期','透析模式', '透析器']//导出表头
223
+          ['序号', '透析号', '患者姓名','性别','年龄','透析日期','干体重','前次透后体重','透前体重','体重增加','透后体重',]//导出表头
306
         ]
224
         ]
307
         this.tableData.forEach((item,index) =>{
225
         this.tableData.forEach((item,index) =>{
308
           let rowdata=[]
226
           let rowdata=[]
310
             item.index,
228
             item.index,
311
             item.dialysis_no,
229
             item.dialysis_no,
312
             item.name,
230
             item.name,
231
+            item.sex,
232
+            item.age,
313
             item.date,
233
             item.date,
314
-            item.mode_name,
315
-            item.dialyszers,
234
+
235
+            item.dry_weight,
236
+            item.last_weight_after,
237
+            item.weight_before,
238
+            item.weight_add,
239
+            item.weight_after
240
+
316
           ]
241
           ]
317
           tableData.push(rowdata)
242
           tableData.push(rowdata)
318
         })
243
         })
319
         let workSheet = XLSX.utils.aoa_to_sheet(tableData);
244
         let workSheet = XLSX.utils.aoa_to_sheet(tableData);
320
         let bookNew = XLSX.utils.book_new();
245
         let bookNew = XLSX.utils.book_new();
321
-        XLSX.utils.book_append_sheet(bookNew, workSheet, '透析器使用统计') // 工作簿名称
322
-        let name = '透析器使用统计'+ '.xlsx'
246
+        XLSX.utils.book_append_sheet(bookNew, workSheet, '患者体重详情') // 工作簿名称
247
+        let name = '患者体重详情'+ '.xlsx'
323
         XLSX.writeFile(bookNew, name) // 保存的文件名
248
         XLSX.writeFile(bookNew, name) // 保存的文件名
324
       },
249
       },
325
       // 查询
250
       // 查询
328
       },
253
       },
329
       // 详情查询
254
       // 详情查询
330
       deil_click(){
255
       deil_click(){
331
-        this.Getdialyzerdetail(this.getdialyze(this.dialyze_value))
256
+        // this.Getdialyzerdetail(this.getdialyze(this.dialyze_value))
332
       },
257
       },
333
        // 下载
258
        // 下载
334
       Download_click(){
259
       Download_click(){
422
         console.log('eve',eve);
347
         console.log('eve',eve);
423
       },
348
       },
424
       // 详情数据源
349
       // 详情数据源
425
-      Getdialyzerdetail(name){
426
-        const params={
427
-          dialyzer:name,
428
-          start_date:this.start_date,
429
-          end_date:this.end_date,
350
+      Getdialyzerdetail(){
351
+        const params ={
352
+          start_time:this.start_date,
353
+          end_time:this.end_date,
354
+          add_type:this.weight_value,
355
+          dry_type:this.dry_value,
356
+          after_type:this.after_value,
357
+          keyword:this.Patient_name,
430
           page:this.currentPage,
358
           page:this.currentPage,
431
           limit:this.limit,
359
           limit:this.limit,
432
         }
360
         }
433
-        Getdialyzerdetail(params).then(response =>{
361
+        Getweightdetail(params).then(response =>{
434
           if(response.data.state == 1){
362
           if(response.data.state == 1){
435
-            const list = response.data.data.prescriptions
363
+            console.log('体重详情分析',response.data.data);
364
+            const list = response.data.data.list
436
             const table=[]
365
             const table=[]
437
-            list.forEach((item,index)=>{
438
-              const obj ={
439
-                index:index+1,
440
-                dialysis_no:item.patient.dialysis_no,
441
-                name:item.patient.name,
442
-                date:this.getTime(item.record_date),
443
-                mode_name:this.getmode(item.mode_id),
444
-                dialyszers:item.dialysis_dialyszers +'  '+ item.dialysis_irrigation+'  '+item.dialysis_strainer
445
-                // dialyszers:item.dialysis_dialyszers || item.dialysis_irrigation || item.dialysis_strainer
446
-              }
447
-              table.push(obj)
448
-            })
449
-            this.tableData = table
450
-            this.total = response.data.data.total
366
+            if(list.length >0){
367
+              list.forEach((item,index)=>{
368
+                const obj ={
369
+                  index:index+1,
370
+                  dialysis_no:item.dialysis_no,
371
+                  name:item.patient_name,
372
+                  sex:this.getgender(item.gender),
373
+                  age:item.age,
374
+                  date:this.getTime(item.assessment_date),
375
+                  dry_weight:item.dry_weight,
376
+                  last_weight_after:item.last_weight_after,
377
+                  weight_before:item.weight_before,
378
+                  weight_add:item.weight_add,
379
+                  weight_after:item.weight_after
380
+                }
381
+                table.push(obj)
382
+              })
383
+              this.tableData = table
384
+              this.total = response.data.data.total
385
+            }
451
           }
386
           }
452
           console.log('77777',response);
387
           console.log('77777',response);
453
         })
388
         })
554
       },
489
       },
555
       handleCurrentChange(val){
490
       handleCurrentChange(val){
556
         this.currentPage = val
491
         this.currentPage = val
557
-        this.Getdialyzerdetail(this.getdialyze(this.dialyze_value))
492
+        this.Getdialyzerdetail()
558
       },
493
       },
559
       handleSizeChange(val){
494
       handleSizeChange(val){
560
         this.limit = val
495
         this.limit = val
561
-        this.Getdialyzerdetail(this.getdialyze(this.dialyze_value))
496
+        this.Getdialyzerdetail()
562
       },
497
       },
563
-      // 透析模式
564
-      getmode(ids){
565
-        const modes=this.modearr
566
-        for(let i in modes){
567
-          if(ids == modes[i].id){
568
-            return modes[i].name
569
-          }
498
+      // 性别
499
+      getgender(ids){
500
+        if(ids ==1){
501
+          return "男"
502
+        }else{
503
+          return "女"
570
         }
504
         }
571
       },
505
       },
572
        // 转换时间
506
        // 转换时间
591
         }
525
         }
592
         return new Blob([u8arr], { type: mime });
526
         return new Blob([u8arr], { type: mime });
593
       },
527
       },
594
-      // 全部透析器
595
-      Getdialyzerconfig(){
596
-        Getdialyzerconfig().then(response =>{
597
-          console.log('666666',response);
598
-        })
599
-      },
528
+
600
       getdialyze(val){
529
       getdialyze(val){
601
         const option = this.dialyze_options
530
         const option = this.dialyze_options
602
         for(let i in option){
531
         for(let i in option){
607
       }
536
       }
608
     },
537
     },
609
     mounted(){
538
     mounted(){
610
-      this.getecharts()
539
+
611
     },
540
     },
612
     created(){
541
     created(){
613
       this.start_date = this.getFirstDayOfMonth(new Date())
542
       this.start_date = this.getFirstDayOfMonth(new Date())
614
-      this.Getdialyzerconfig()
543
+      this.Getdialyzerdetail()
615
     },
544
     },
616
 
545
 
617
   }
546
   }

+ 8 - 7
src/xt_pages/dialysis/batch_print/batch_print_order_seventynine.vue 查看文件

76
                         上机前病情:
76
                         上机前病情:
77
                         <label-box :isChecked="record.assessment_before_dislysis.symptom_before_dialysis_other==''?true :false" showValue="无特殊"></label-box>&nbsp;
77
                         <label-box :isChecked="record.assessment_before_dislysis.symptom_before_dialysis_other==''?true :false" showValue="无特殊"></label-box>&nbsp;
78
                         <label-box :isChecked="record.assessment_before_dislysis.symptom_before_dialysis_other!=''?true :false" showValue="症状:"></label-box>
78
                         <label-box :isChecked="record.assessment_before_dislysis.symptom_before_dialysis_other!=''?true :false" showValue="症状:"></label-box>
79
-                        
79
+
80
                         <span>{{record.assessment_before_dislysis.symptom_before_dialysis_other}}</span>
80
                         <span>{{record.assessment_before_dislysis.symptom_before_dialysis_other}}</span>
81
                       </div>
81
                       </div>
82
                     </td>
82
                     </td>
87
                         {{ record.assessment_before_dislysis.diastolic_blood_pressure ? record.assessment_before_dislysis.diastolic_blood_pressure : ""}}
87
                         {{ record.assessment_before_dislysis.diastolic_blood_pressure ? record.assessment_before_dislysis.diastolic_blood_pressure : ""}}
88
                         mmHg
88
                         mmHg
89
                       </div>
89
                       </div>
90
-                      
90
+
91
                     </td>
91
                     </td>
92
                   </tr>
92
                   </tr>
93
 
93
 
148
                     <td colspan="3">
148
                     <td colspan="3">
149
                       <div style="display: flex;">
149
                       <div style="display: flex;">
150
                         <div style="flex: 1;">
150
                         <div style="flex: 1;">
151
-                          上次透后体重:{{ record.lastafterweight.weight_after ? 
151
+                          上次透后体重:{{ record.lastafterweight.weight_after ?
152
                           parseFloat( record.lastafterweight.weight_after).toFixed(1)
152
                           parseFloat( record.lastafterweight.weight_after).toFixed(1)
153
                           : '未称重'}}kg
153
                           : '未称重'}}kg
154
                         </div>
154
                         </div>
189
                       <div style="line-height:30px;">
189
                       <div style="line-height:30px;">
190
                       <span>目标脱水量: {{ record.prescription.target_ultrafiltration ? record.prescription.target_ultrafiltration : "" }} </span>L &nbsp;&nbsp;
190
                       <span>目标脱水量: {{ record.prescription.target_ultrafiltration ? record.prescription.target_ultrafiltration : "" }} </span>L &nbsp;&nbsp;
191
                       <span>处方脱水量: {{ record.prescription.prescription_water ? record.prescription.prescription_water : "" }} </span>L &nbsp;&nbsp;
191
                       <span>处方脱水量: {{ record.prescription.prescription_water ? record.prescription.prescription_water : "" }} </span>L &nbsp;&nbsp;
192
-                      <span>透析液流量: {{ record.prescription.dialysate_flow ? record.prescription.dialysate_flow : "" }} </span>ml/h
192
+                      <!-- <span>透析液流量: {{ record.prescription.dialysate_flow ? record.prescription.dialysate_flow : "" }} </span>ml/h -->
193
                       </div>
193
                       </div>
194
                     </td>
194
                     </td>
195
                     <td >
195
                     <td >
634
                 this.records[recordIndex].isShowZero = true
634
                 this.records[recordIndex].isShowZero = true
635
               }
635
               }
636
 
636
 
637
+
637
               var delghTwo = 0
638
               var delghTwo = 0
638
 
639
 
639
               if (
640
               if (
640
                 this.records[recordIndex].advices &&
641
                 this.records[recordIndex].advices &&
641
                 this.records[recordIndex].advices.length < 10
642
                 this.records[recordIndex].advices.length < 10
642
               ) {
643
               ) {
643
-                delghTwo = 10 - this.records[recordIndex].advices.length
644
+                delghTwo = 10 - (this.records[recordIndex].advices.length)
644
               } else {
645
               } else {
645
                 delghTwo = 0
646
                 delghTwo = 0
646
               }
647
               }
660
                 }
661
                 }
661
               }
662
               }
662
               console.log('his_advices',this.records[recordIndex].advices);
663
               console.log('his_advices',this.records[recordIndex].advices);
663
-              
664
+
664
               var childMap = {}
665
               var childMap = {}
665
               for (const index in this.records[recordIndex].advices) {
666
               for (const index in this.records[recordIndex].advices) {
666
                 if (this.records[recordIndex].advices[index].parent_id == 0) {
667
                 if (this.records[recordIndex].advices[index].parent_id == 0) {
695
               }
696
               }
696
               // advices = advices.concat(this.records[recordIndex].his_advices)
697
               // advices = advices.concat(this.records[recordIndex].his_advices)
697
               console.log('advices',advices);
698
               console.log('advices',advices);
698
-              
699
+
699
               var leftAdvice = []
700
               var leftAdvice = []
700
               var rightAdvice = []
701
               var rightAdvice = []
701
               var adlen = advices.length
702
               var adlen = advices.length

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

2630
       },
2630
       },
2631
       show(pre, schedual, last, his_is_open,is_advice_open,admins) {
2631
       show(pre, schedual, last, his_is_open,is_advice_open,admins) {
2632
       
2632
       
2633
-        if(this.$store.getters.xt_user.template_info.org_id==10702){
2633
+        if(this.$store.getters.xt_user.template_info.org_id==10702 || this.$store.getters.xt_user.template_info.org_id==10635){
2634
           if(this.predialysis!=undefined){
2634
           if(this.predialysis!=undefined){
2635
             if(this.dialysisPrescription.target_ultrafiltration==0 || this.dialysisPrescription.target_ultrafiltration==""){
2635
             if(this.dialysisPrescription.target_ultrafiltration==0 || this.dialysisPrescription.target_ultrafiltration==""){
2636
               this.dialysisPrescription.target_ultrafiltration = (this.predialysis.weight_before - this.predialysis.dry_weight - this.predialysis.additional_weight).toFixed(2)
2636
               this.dialysisPrescription.target_ultrafiltration = (this.predialysis.weight_before - this.predialysis.dry_weight - this.predialysis.additional_weight).toFixed(2)

+ 8 - 4
src/xt_pages/dialysis/template/DialysisPrintOrderSeventynine.vue 查看文件

1179
           var projects = response.data.data.projects
1179
           var projects = response.data.data.projects
1180
           var newDocArr= []
1180
           var newDocArr= []
1181
           var projectarr = []
1181
           var projectarr = []
1182
+          var projectArrs = []
1182
           for(let i=0;i<advices.length;i++){
1183
           for(let i=0;i<advices.length;i++){
1183
-            console.log("hhahahahh",advices[i].advice_name.indexOf("0.9%氯化钠注射液"))
1184
-            console.log("jjjjjjjjj",advices[i].delivery_way.indexOf("管路预冲"))
1184
+            // console.log("hhahahahh",advices[i].advice_name.indexOf("0.9%氯化钠注射液"))
1185
+            // console.log("jjjjjjjjj",advices[i].delivery_way.indexOf("管路预冲"))
1185
            if(advices[i].advice_name.indexOf("0.9%氯化钠注射液") ==-1 && advices[i].delivery_way.indexOf("管路预冲")==-1){
1186
            if(advices[i].advice_name.indexOf("0.9%氯化钠注射液") ==-1 && advices[i].delivery_way.indexOf("管路预冲")==-1){
1186
               newDocArr.push(advices[i])
1187
               newDocArr.push(advices[i])
1187
            }
1188
            }
1188
           }
1189
           }
1189
           for(let i in projects){
1190
           for(let i in projects){
1190
             if(projects[i].type ==2){
1191
             if(projects[i].type ==2){
1191
-              projectarr.push(projects[i])
1192
+              if(projects[i].project.project_name == '血透监测'){
1193
+                console.log('血透监测',projects[i].advice_name);
1194
+                projectarr.push(projects[i])
1195
+              }
1192
             }
1196
             }
1193
           }
1197
           }
1194
 
1198
 
1195
-          console.log("newDocArr----------------------",projectarr)
1199
+          console.log("血透监测 != -1",projects)
1196
           var doctorAdevieInfo = response.data.data.doctorAdevieInfo
1200
           var doctorAdevieInfo = response.data.data.doctorAdevieInfo
1197
           var tableAdvice = newDocArr.concat(doctorAdevieInfo);
1201
           var tableAdvice = newDocArr.concat(doctorAdevieInfo);
1198
           if(projectarr.length>0){
1202
           if(projectarr.length>0){

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

619
                   <td width="100">
619
                   <td width="100">
620
                     <label-box :isChecked="prescription.dialysate_formulation_name.indexOf('常规') > -1 ? true : prescription.dialysate_formulation_name.indexOf('低钙') > -1 ? true : false" showValue="2.0"></label-box>
620
                     <label-box :isChecked="prescription.dialysate_formulation_name.indexOf('常规') > -1 ? true : prescription.dialysate_formulation_name.indexOf('低钙') > -1 ? true : false" showValue="2.0"></label-box>
621
                     <label-box :isChecked="prescription.dialysate_formulation_name.indexOf('高钾') > -1 ? true : false" showValue="2.5"></label-box>
621
                     <label-box :isChecked="prescription.dialysate_formulation_name.indexOf('高钾') > -1 ? true : false" showValue="2.5"></label-box>
622
+                    <label-box :isChecked="prescription.dialysate_formulation_name.indexOf('钾3.0') > -1 ? true : false" showValue="3.0"></label-box>
622
                   </td>
623
                   </td>
623
                   <td width="10">)</td>
624
                   <td width="10">)</td>
624
                   <td width="10">mmol/L</td>
625
                   <td width="10">mmol/L</td>

+ 4 - 1
src/xt_pages/org/orginfo.vue 查看文件

390
             GetOrgInfo().then(response=>{
390
             GetOrgInfo().then(response=>{
391
                 var res = response.data;
391
                 var res = response.data;
392
                 if (res.state === 1) {
392
                 if (res.state === 1) {
393
+                   
393
                     this.formloading = false;
394
                     this.formloading = false;
394
                     this.form.org_name = res.data.orginfo.org_name;
395
                     this.form.org_name = res.data.orginfo.org_name;
395
                     this.form.contact_name = res.data.orginfo.contact_name;
396
                     this.form.contact_name = res.data.orginfo.contact_name;
411
                     this.form.illness_list = [];
412
                     this.form.illness_list = [];
412
                     this.form.org_gallery = res.data.orginfo.org_gallery;
413
                     this.form.org_gallery = res.data.orginfo.org_gallery;
413
                     this.fileList = [];
414
                     this.fileList = [];
414
-                    var gallery =  res.data.orginfo.gallery
415
+                    var gallery =  res.data.orginfo.org_gallery
416
+                    console.log("haaaaaaaaaaaaaaaaaa",gallery)
415
                     for (const index in gallery) {
417
                     for (const index in gallery) {
416
                         var image = {id:gallery[index].id, name:gallery[index].id, url:gallery[index].type==1?gallery[index].url:gallery[index].url+'?vframe/jpg/offset/0/w/100/h/100'};
418
                         var image = {id:gallery[index].id, name:gallery[index].id, url:gallery[index].type==1?gallery[index].url:gallery[index].url+'?vframe/jpg/offset/0/w/100/h/100'};
417
                         this.fileList.push(image);
419
                         this.fileList.push(image);
418
                     }
420
                     }
421
+                    console.log("fileList-------------",fileList)
419
 
422
 
420
                     var illness = res.data.orginfo.illness.split(',');
423
                     var illness = res.data.orginfo.illness.split(',');
421
                     for (const index in illness) {
424
                     for (const index in illness) {

+ 7 - 3
src/xt_pages/outpatientCharges/listTemplate/listPrintforu.vue 查看文件

40
                 <td style="width:25%">{{item.code}}</td>
40
                 <td style="width:25%">{{item.code}}</td>
41
                 <td style="width:25%">{{item.name}}</td>
41
                 <td style="width:25%">{{item.name}}</td>
42
                 <td style="width:15%">{{item.spec}}</td>
42
                 <td style="width:15%">{{item.spec}}</td>
43
-                <td style="width:5%">{{item.count}}</td>
44
-                <td style="width:5%">{{item.unit}}</td>
45
-                <td style="width:8%">{{(item.price*1).toFixed(2)}}</td>
43
+                <td style="width:5%" >
44
+                  <span v-if="item.code!=undefined">{{item.count}}</span>
45
+                </td>
46
+                <td style="width:5%" >{{item.unit}}</td>
47
+                <td style="width:8%">
48
+                  <span v-if="item.code!=undefined">{{(item.price*1).toFixed(2)}}</span>
49
+                </td>
46
                 <td style="width:8%">{{(item.price * item.count).toFixed(2)}}</td>
50
                 <td style="width:8%">{{(item.price * item.count).toFixed(2)}}</td>
47
                 <td style="width:8%" v-if="item.code!=undefined">
51
                 <td style="width:8%" v-if="item.code!=undefined">
48
                   {{(item.selfpay_prop)*100}}
52
                   {{(item.selfpay_prop)*100}}

+ 10 - 10
src/xt_pages/outpatientCharges/statementPrint.vue 查看文件

22
           org_id == 10028 ||
22
           org_id == 10028 ||
23
           org_id == 10278 ||
23
           org_id == 10278 ||
24
           org_id == 10610 ||
24
           org_id == 10610 ||
25
-          org_id==10537 ||  org_id == 0
25
+          org_id==10537 
26
         "
26
         "
27
       >
27
       >
28
         <printTwo :info="info" v-if="org_id == 9990"></printTwo>
28
         <printTwo :info="info" v-if="org_id == 9990"></printTwo>
70
       <printSixtheen :info="info" v-if="org_id == 10697"></printSixtheen>
70
       <printSixtheen :info="info" v-if="org_id == 10697"></printSixtheen>
71
 
71
 
72
       <printOne :info="info" v-if=" org_id != 9990 &&
72
       <printOne :info="info" v-if=" org_id != 9990 &&
73
-            org_id != 10138 &&
74
-            org_id != 9504 &&
75
-            org_id != 10028 &&
76
-            org_id != 0 &&   org_id != 10610 && org_id !=10537 && org_id !=10697 &&
77
-            org_id != 10278 && org_id != 10387 && org_id != 10191 &&org_id != 10210 &&org_id != 10485 &&org_id != 10480 &&org_id != 10510 &&org_id != 10088 &&org_id != 10633 &&org_id != 0  && this.paramsObj.balance_accounts_type == 1">
73
+            org_id != 10138 && org_id != 9504 && org_id != 10028 &&
74
+            org_id != 10610 && org_id !=10537 && org_id !=10697 &&
75
+            org_id != 10278 && org_id != 10387 && org_id != 10191 && 
76
+            org_id != 10210 &&org_id != 10485 &&org_id != 10480 && 
77
+            org_id != 10510 &&org_id != 10088 &&org_id != 10633 && this.paramsObj.balance_accounts_type == 1">
78
       </printOne>
78
       </printOne>
79
       <privateChargePrint :info="info" v-if="org_id != 9990 &&
79
       <privateChargePrint :info="info" v-if="org_id != 9990 &&
80
-            org_id != 10138 &&
81
-            org_id != 9504 &&
82
-            org_id != 10028 && org_id !=10697 &&
83
-            org_id != 10278 && org_id != 10610 && org_id !=10537 && org_id != 10387 && org_id != 10191 &&org_id != 10210 &&org_id != 10485  &&org_id != 10480 &&org_id != 10510 &&org_id != 10633 && org_id != 0 && this.paramsObj.balance_accounts_type == 2">
80
+            org_id != 10138 && org_id != 9504 &&  org_id != 10028 && org_id !=10697 &&
81
+            org_id != 10278 && org_id != 10610 && org_id !=10537 && org_id != 10387 && 
82
+            org_id != 10191 &&org_id != 10210 &&org_id != 10485  &&org_id != 10480 && 
83
+            org_id != 10510 &&org_id != 10633 && this.paramsObj.balance_accounts_type == 2">
84
       </privateChargePrint>
84
       </privateChargePrint>
85
 
85
 
86
     </div>
86
     </div>

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

33
       </tr>
33
       </tr>
34
       <tr>
34
       <tr>
35
         <td width="70">就医登记号</td>
35
         <td width="70">就医登记号</td>
36
-        <td colspan="7">{{info.psn_no}}</td>
36
+        <td colspan="7" v-if="org_id !=10644">{{info.psn_no}}</td>
37
+        <td colspan="7" v-if="org_id ==10644">{{info.mdtrt_id}}</td>
37
         <td width="50">门诊号</td>
38
         <td width="50">门诊号</td>
38
         <td colspan="3">{{info.number}}</td>
39
         <td colspan="3">{{info.number}}</td>
39
       </tr>
40
       </tr>
346
           return {}
347
           return {}
347
         }
348
         }
348
       }
349
       }
349
-    },methods:{
350
+    },
351
+    data(){
352
+      return{
353
+        org_id:'',
354
+      }
355
+    },
356
+    methods:{
350
       getBirth(idNo){
357
       getBirth(idNo){
351
         var year = idNo.substring(6, 10);
358
         var year = idNo.substring(6, 10);
352
         var month = idNo.substring(10, 12);
359
         var month = idNo.substring(10, 12);
382
         return dateTime
389
         return dateTime
383
       },
390
       },
384
 
391
 
392
+    },
393
+    created(){
394
+      this.org_id = this.$store.getters.xt_user.org_id
385
     }
395
     }
386
   }
396
   }
387
 
397
 

+ 8 - 2
src/xt_pages/outpatientDoctorStation/components/deskRecord.vue 查看文件

820
     this.first_dialysis_date = this.getTime(
820
     this.first_dialysis_date = this.getTime(
821
       this.patientInfo.first_dialysis_date
821
       this.patientInfo.first_dialysis_date
822
     );
822
     );
823
-   
823
+    
824
+    console.log("case_history-----------------------------",this.case_history)
824
     if(this.case_history!=undefined){
825
     if(this.case_history!=undefined){
825
       if(this.case_history.id == 0){
826
       if(this.case_history.id == 0){
826
         this.primary_disease = this.LastCaseHistory.primary_disease
827
         this.primary_disease = this.LastCaseHistory.primary_disease
893
         console.log("patient------------------------",this.patientInfo)
894
         console.log("patient------------------------",this.patientInfo)
894
         console.log("prescriptionInfo--------------------",this.prescriptionInfo)
895
         console.log("prescriptionInfo--------------------",this.prescriptionInfo)
895
         console.log("this.diagnoses",this.diagnoses)
896
         console.log("this.diagnoses",this.diagnoses)
896
-        if(this.befor!=undefined){
897
+        console.log("this.case_history",this.case_history)
898
+        if(this.case_history!=null && this.case_history.id == 0){
899
+          console.log("hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh")
900
+          if(this.befor!=undefined){
897
           if(this.case_history.temperature == 0){
901
           if(this.case_history.temperature == 0){
898
             this.case_history.temperature =  this.befor.temperature?this.befor.temperature:""
902
             this.case_history.temperature =  this.befor.temperature?this.befor.temperature:""
899
           }
903
           }
925
                console.log("诊断---------------------",this.diagnoses)
929
                console.log("诊断---------------------",this.diagnoses)
926
               this.case_history.diagnose = this.getDiagnosis(this.prescriptionInfo.diagnosis) 
930
               this.case_history.diagnose = this.getDiagnosis(this.prescriptionInfo.diagnosis) 
927
            }
931
            }
932
+         }
928
         }
933
         }
934
+      
929
       },
935
       },
930
       deep: true,
936
       deep: true,
931
     },
937
     },

+ 18 - 0
src/xt_pages/qcd/basicInformationAnalysis.vue 查看文件

174
                     <p>HDF+HP:{{item.count}}次({{(item.count/total*100).toFixed(2)}}%)</p>
174
                     <p>HDF+HP:{{item.count}}次({{(item.count/total*100).toFixed(2)}}%)</p>
175
                     <el-progress :percentage="(item.count/total*100).toFixed(2)"></el-progress>
175
                     <el-progress :percentage="(item.count/total*100).toFixed(2)"></el-progress>
176
                   </span>
176
                   </span>
177
+
178
+                 
177
                   <!-- <span v-if="item.mode_id == 'HFHD+HD'">
179
                   <!-- <span v-if="item.mode_id == 'HFHD+HD'">
178
                       <p>HFHD+HD:{{item.count}}次({{(item.count/total*100).toFixed(2)}}%)</p>
180
                       <p>HFHD+HD:{{item.count}}次({{(item.count/total*100).toFixed(2)}}%)</p>
179
                       <el-progress :percentage="(item.count/total*100).toFixed(2)"></el-progress>
181
                       <el-progress :percentage="(item.count/total*100).toFixed(2)"></el-progress>
301
                       <el-progress :percentage="(item.count/total*100).toFixed(2)"></el-progress>
303
                       <el-progress :percentage="(item.count/total*100).toFixed(2)"></el-progress>
302
                   </span>
304
                   </span>
303
 
305
 
306
+                  <span v-if="item.mode_id == 'HD(无肝素)'">
307
+                    <p>HD(无肝素):{{item.count}}次({{(item.count/total*100).toFixed(2)}}%)</p>
308
+                    <el-progress :percentage="(item.count/total*100).toFixed(2)"></el-progress>
309
+                  </span>
310
+
311
+                  <span v-if="item.mode_id == 'HDF17H'">
312
+                    <p>HDF17H:{{item.count}}次({{(item.count/total*100).toFixed(2)}}%)</p>
313
+                    <el-progress :percentage="(item.count/total*100).toFixed(2)"></el-progress>
314
+                  </span>
315
+
304
 
316
 
305
                </div>
317
                </div>
306
               </div>
318
               </div>
1105
             if(modedate[i].mode_id == 39){
1117
             if(modedate[i].mode_id == 39){
1106
               modedate[i].mode_id = "HF16"
1118
               modedate[i].mode_id = "HF16"
1107
             }
1119
             }
1120
+            if(modedate[i].mode_id == 40){
1121
+                modedate[i].mode_id = "HD(无肝素)"
1122
+            }
1123
+            if(modedate[i].mode_id == 41){
1124
+                modedate[i].mode_id = "HDF17H"
1125
+            }
1108
             this.modetype = modedate
1126
             this.modetype = modedate
1109
 
1127
 
1110
             // this.modesData.xAxis.push(modedate[i].mode_id)
1128
             // this.modesData.xAxis.push(modedate[i].mode_id)

+ 32 - 6
src/xt_pages/qcd/treatmentControlAnalysis/components/TimePersonal.vue 查看文件

367
             if(modeIdCount[i].mode_id == 39){
367
             if(modeIdCount[i].mode_id == 39){
368
               modeIdCount[i].mode_id = "HF16"
368
               modeIdCount[i].mode_id = "HF16"
369
             }
369
             }
370
+            if(modeIdCount[i].mode_id == 40){
371
+              modeIdCount[i].mode_id = "HD(无肝素)"
372
+            }
373
+            if(modeIdCount[i].mode_id == 41){
374
+              modeIdCount[i].mode_id = "HDF17H"
375
+            }
370
           }
376
           }
371
           this.modeIdCount = modeIdCount
377
           this.modeIdCount = modeIdCount
372
 
378
 
493
             if(scheduleCount[i].mode_id == 39){
499
             if(scheduleCount[i].mode_id == 39){
494
               scheduleCount[i].mode_id = "HF16"
500
               scheduleCount[i].mode_id = "HF16"
495
             }
501
             }
502
+            if(scheduleCount[i].mode_id == 40){
503
+              scheduleCount[i].mode_id = "HD(无肝素)"
504
+            }
505
+            if(scheduleCount[i].mode_id == 41){
506
+              scheduleCount[i].mode_id = "HDF17H"
507
+            }
496
           }
508
           }
497
           this.scheduleCount = scheduleCount
509
           this.scheduleCount = scheduleCount
498
           let dataInfo = {}
510
           let dataInfo = {}
703
           patients[i].mode_id = "HDF80"
715
           patients[i].mode_id = "HDF80"
704
         }else if(patients[i].mode_id == 39){
716
         }else if(patients[i].mode_id == 39){
705
           patients[i].mode_id = "HF16"
717
           patients[i].mode_id = "HF16"
718
+        }else if(patients[i].mode_id == 40){
719
+          patients[i].mode_id = "HD(无肝素)"
720
+        }else if(patients[i].mode_id == 41){
721
+          patients[i].mode_id = "HDF17H"
706
         }
722
         }
707
         
723
         
708
 
724
 
783
          this.DialysisData[i].HDF80 = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"HDF80")
799
          this.DialysisData[i].HDF80 = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"HDF80")
784
          this.DialysisData[i].HF16 = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"HF16")
800
          this.DialysisData[i].HF16 = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"HF16")
785
 
801
 
802
+         this.DialysisData[i].HD无肝素 = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"HD(无肝素)")
803
+
804
+         this.DialysisData[i].HDF17H = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"HDF17H")
805
+
786
          this.DialysisData[i].age = this.getAge(this.DialysisData[i].id_card_no)
806
          this.DialysisData[i].age = this.getAge(this.DialysisData[i].id_card_no)
787
          this.DialysisData[i].total_count = this.getDialysisCount(this.DialysisData[i].patient_id)
807
          this.DialysisData[i].total_count = this.getDialysisCount(this.DialysisData[i].patient_id)
788
        }
808
        }
789
        console.log("hhh2323323232",this.DialysisData)
809
        console.log("hhh2323323232",this.DialysisData)
790
        import('@/vendor/Export2Excel').then(excel => {
810
        import('@/vendor/Export2Excel').then(excel => {
791
-        const tHeader = ['序号','姓名', '年龄', '透析号','HD','HDF','HD+HP','HP','HF','SCUF','IUF','HFHD','HFHD+HP','HFR','HDF+HP','CRRT','腹水回输','IUF+HD','UF','HD+','I-HDF','HD高通','CVVH','CVVHD','CVVHDF','PE','血浆胆红素吸附+HP','HPD','HDP','PHF','HDF100','HDF600','HDF800','HDF1000','HDF80','HF16','总数']
792
-        const filterVal = ['index','name', 'age', 'dialysis_no','HD','HDF','HDHP','HP','HF','SCUF','IUF','HFHD','HFHDHP','HFR','HDFHP','CRRT','OTR','IUF+HD','UF','HD+','I-HDF','HDGT','CVVH','CVVHD','CVVHDF','PE','XUEHP','HPD','HDP','PHF','HDF100','HDF600','HDF800','HDF1000','HDF80','HF16','total_count']
811
+        const tHeader = ['序号','姓名', '年龄', '透析号','HD','HDF','HD+HP','HP','HF','SCUF','IUF','HFHD','HFHD+HP','HFR','HDF+HP','CRRT','腹水回输','IUF+HD','UF','HD+','I-HDF','HD高通','CVVH','CVVHD','CVVHDF','PE','血浆胆红素吸附+HP','HPD','HDP','PHF','HDF100','HDF600','HDF800','HDF1000','HDF80','HF16','HD无肝素','HDF17H','总数']
812
+        const filterVal = ['index','name', 'age', 'dialysis_no','HD','HDF','HDHP','HP','HF','SCUF','IUF','HFHD','HFHDHP','HFR','HDFHP','CRRT','OTR','IUF+HD','UF','HD+','I-HDF','HDGT','CVVH','CVVHD','CVVHDF','PE','XUEHP','HPD','HDP','PHF','HDF100','HDF600','HDF800','HDF1000','HDF80','HF16','HD无肝素','HDF17H','total_count']
793
 
813
 
794
         const data = this.formatJson(filterVal, this.DialysisData)
814
         const data = this.formatJson(filterVal, this.DialysisData)
795
 
815
 
838
          this.DialysisData[i].HDF80 = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"HDF80")
858
          this.DialysisData[i].HDF80 = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"HDF80")
839
          this.DialysisData[i].HF16 = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"HF16")
859
          this.DialysisData[i].HF16 = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"HF16")
840
 
860
 
861
+         this.DialysisData[i].HD无肝素 = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"HD(无肝素)")
862
+
863
+          this.DialysisData[i].HDF17H = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"HDF17H")
864
+
841
          this.DialysisData[i].age = this.getAge(this.DialysisData[i].id_card_no)
865
          this.DialysisData[i].age = this.getAge(this.DialysisData[i].id_card_no)
842
          this.DialysisData[i].total_count = this.getScheduleDialysisCount(this.DialysisData[i].patient_id)
866
          this.DialysisData[i].total_count = this.getScheduleDialysisCount(this.DialysisData[i].patient_id)
843
        }
867
        }
844
        console.log("hhh2323323232",this.DialysisData)
868
        console.log("hhh2323323232",this.DialysisData)
845
        import('@/vendor/Export2Excel').then(excel => {
869
        import('@/vendor/Export2Excel').then(excel => {
846
-        const tHeader = ['序号','姓名', '年龄', '透析号','HD','HDF','HD+HP','HP','HF','SCUF','IUF','HFHD','HFHD+HP','HFR','HDF+HP','CRRT','腹水回输','IUF+HD','UF','HD+','I-HDF','HD高通','CVVH','CVVHD','CVVHDF','PE','血浆胆红素吸附+HP','HPD','HDP','PHF','HDF100','HDF600','HDF800','HDF1000','HDF80','HF16','总数']
847
-        const filterVal = ['index','name', 'age', 'dialysis_no','HD','HDF','HDHP','HP','HF','SCUF','IUF','HFHD','HFHDHP','HFR','HDFHP','CRRT','OTR','IUF+HD','UF','HD+','I-HDF','HDGT','CVVH','CVVHD','CVVHDF','PE','XUEHP','HPD','HDP','PHF','HDF100','HDF600','HDF800','HDF1000','HDF80','HF16','total_count']
870
+        const tHeader = ['序号','姓名', '年龄', '透析号','HD','HDF','HD+HP','HP','HF','SCUF','IUF','HFHD','HFHD+HP','HFR','HDF+HP','CRRT','腹水回输','IUF+HD','UF','HD+','I-HDF','HD高通','CVVH','CVVHD','CVVHDF','PE','血浆胆红素吸附+HP','HPD','HDP','PHF','HDF100','HDF600','HDF800','HDF1000','HDF80','HF16','HD无肝素','HDF17H','总数']
871
+        const filterVal = ['index','name', 'age', 'dialysis_no','HD','HDF','HDHP','HP','HF','SCUF','IUF','HFHD','HFHDHP','HFR','HDFHP','CRRT','OTR','IUF+HD','UF','HD+','I-HDF','HDGT','CVVH','CVVHD','CVVHDF','PE','XUEHP','HPD','HDP','PHF','HDF100','HDF600','HDF800','HDF1000','HDF80','HF16','HD无肝素','HDF17H','total_count']
848
 
872
 
849
         const data = this.formatJson(filterVal, this.DialysisData)
873
         const data = this.formatJson(filterVal, this.DialysisData)
850
 
874
 
893
          this.scheduleList[i].HDF1000 = this.getScheduleHdModeIdCount(this.scheduleList[i].patient_id,"HDF1000")
917
          this.scheduleList[i].HDF1000 = this.getScheduleHdModeIdCount(this.scheduleList[i].patient_id,"HDF1000")
894
          this.scheduleList[i].HDF80 = this.getScheduleHdModeIdCount(this.scheduleList[i].patient_id,"HDF80")
918
          this.scheduleList[i].HDF80 = this.getScheduleHdModeIdCount(this.scheduleList[i].patient_id,"HDF80")
895
          this.scheduleList[i].HF16 = this.getScheduleHdModeIdCount(this.scheduleList[i].patient_id,"HF16")
919
          this.scheduleList[i].HF16 = this.getScheduleHdModeIdCount(this.scheduleList[i].patient_id,"HF16")
920
+         this.scheduleList[i].HD无肝素 = this.getScheduleHdModeIdCount(this.scheduleList[i].patient_id,"HD(无肝素)")
921
+         this.scheduleList[i].HDF17H = this.getScheduleHdModeIdCount(this.scheduleList[i].patient_id,"HDF17H")
896
          this.scheduleList[i].age = this.getAge(this.scheduleList[i].id_card_no)
922
          this.scheduleList[i].age = this.getAge(this.scheduleList[i].id_card_no)
897
          this.scheduleList[i].total_count = this.getScheduleDialysisCount(this.scheduleList[i].patient_id)
923
          this.scheduleList[i].total_count = this.getScheduleDialysisCount(this.scheduleList[i].patient_id)
898
        }
924
        }
899
        console.log("hhh2323323232",this.scheduleList)
925
        console.log("hhh2323323232",this.scheduleList)
900
        import('@/vendor/Export2Excel').then(excel => {
926
        import('@/vendor/Export2Excel').then(excel => {
901
-        const tHeader = ['序号','姓名', '年龄', '透析号','HD','HDF','HD+HP','HP','HF','SCUF','IUF','HFHD','HFHD+HP','HFR','HDF+HP','CRRT','腹水回输','IUF+HD','UF','HD+','I-HDF','HD高通','CVVH','CVVHD','CVVHDF','PE','血浆胆红素吸附+HP','HPD','HDP','PHF','HDF100','HDF600','HDF800','HDF1000','','HDF80','HF16','总数']
902
-        const filterVal = ['index','name', 'age', 'dialysis_no','HD','HDF','HDHP','HP','HF','SCUF','IUF','HFHD','HFHDHP','HFR','HDFHP','CRRT','OTR','IUF+HD','UF','HD+','I-HDF','HDGT','CVVH','CVVHD','CVVHDF','PE','XUEHP','HPD','HDP','PHF','HDF100','HDF600','HDF800','HDF1000','HDF80','HF16','total_count']
927
+        const tHeader = ['序号','姓名', '年龄', '透析号','HD','HDF','HD+HP','HP','HF','SCUF','IUF','HFHD','HFHD+HP','HFR','HDF+HP','CRRT','腹水回输','IUF+HD','UF','HD+','I-HDF','HD高通','CVVH','CVVHD','CVVHDF','PE','血浆胆红素吸附+HP','HPD','HDP','PHF','HDF100','HDF600','HDF800','HDF1000','','HDF80','HF16','HD无肝素','HDF17H','总数']
928
+        const filterVal = ['index','name', 'age', 'dialysis_no','HD','HDF','HDHP','HP','HF','SCUF','IUF','HFHD','HFHDHP','HFR','HDFHP','CRRT','OTR','IUF+HD','UF','HD+','I-HDF','HDGT','CVVH','CVVHD','CVVHDF','PE','XUEHP','HPD','HDP','PHF','HDF100','HDF600','HDF800','HDF1000','HDF80','HF16','HD无肝素','HDF17H','total_count']
903
 
929
 
904
         const data = this.formatJson(filterVal, this.scheduleList)
930
         const data = this.formatJson(filterVal, this.scheduleList)
905
 
931
 

+ 4 - 4
src/xt_pages/user/components/PatientSidebar.vue 查看文件

190
               name: '1-3',
190
               name: '1-3',
191
               label: '肾科检验'
191
               label: '肾科检验'
192
             },
192
             },
193
-            {
194
-              name: '4-12',
195
-              label: '新版肾科检验'
196
-            },
193
+            // {
194
+            //   name: '4-12',
195
+            //   label: '新版肾科检验'
196
+            // },
197
             {
197
             {
198
               name: '4-1',
198
               name: '4-1',
199
               label: '肾科检查'
199
               label: '肾科检查'