yq1 9 months ago
parent
commit
6440822631

+ 2 - 2
src/router/modules/Dialysisanalysis.js View File

@@ -18,7 +18,7 @@ export default {
18 18
       component: () => import('@/xt_pages/Dialysisanalysis/otherIndicators/index'),
19 19
       name: 'otherIndicators',
20 20
       meta: {
21
-        title: '专业质控',
21
+        title: '检验分析',
22 22
         noCache: true
23 23
       }
24 24
     },
@@ -27,7 +27,7 @@ export default {
27 27
       component: () => import('@/xt_pages/Dialysisanalysis/new_otherIndicators/index'),
28 28
       name: 'otherIndicators',
29 29
       meta: {
30
-        title: '新专业质控',
30
+        title: '透析分析',
31 31
         noCache: true
32 32
       }
33 33
     },

+ 87 - 149
src/xt_pages/Dialysisanalysis/new_otherIndicators/components/Total_analysis.vue View File

@@ -3,7 +3,7 @@
3 3
     <div class="position">
4 4
       <div>
5 5
         <span>
6
-          <el-button @click="return_click" type="text" icon="el-icon-arrow-left">返回</el-button> 
6
+          <el-button @click="return_click" type="text" icon="el-icon-arrow-left">返回</el-button>
7 7
         </span>&nbsp;&nbsp;
8 8
         <span>透析总量分析</span>
9 9
       </div>
@@ -13,7 +13,7 @@
13 13
         <div style="display: flex;">
14 14
           <div>
15 15
             日期:
16
-            <el-select v-model="date_value" this placeholder="请选择" style="width: 100px;">
16
+            <el-select v-model="date_value" @change="datachange" placeholder="请选择" style="width: 100px;">
17 17
               <el-option
18 18
                 v-for="item in date_options"
19 19
                 :key="item.value"
@@ -42,11 +42,11 @@
42 42
           </div>
43 43
           <div>
44 44
             透析模式:
45
-            <el-select v-model="mode" placeholder="请选择" style="width: 120px;">
45
+            <el-select v-model="mode" @change="modechange" placeholder="请选择" style="width: 120px;">
46 46
               <el-option :key='0' label="不限" :value="0">
47 47
               </el-option>
48 48
               <el-option
49
-                v-for="item in mode_options"
49
+                v-for="item in modearr"
50 50
                 :key="item.id"
51 51
                 :label="item.name"
52 52
                 :value="item.id">
@@ -85,7 +85,7 @@
85 85
         <div ref="mychart">
86 86
           <div class="echart" id="mychart"  style="width:100%;height:60vh"></div>
87 87
         </div>
88
-          
88
+
89 89
           <div style="position: fixed;right: 5%;top: 50vh;">
90 90
             <el-popover
91 91
               placement="left"
@@ -124,7 +124,7 @@ import { forEach } from 'jszip';
124 124
         date_options:[{value:1,label:'最近七天'},{value:2,label:'本周'},{value:3,label:'上周'},{value:4,label:'本月'},
125 125
                       {value:5,label:'上月'},{value:6,label:'本年'},{value:7,label:'上一年'}
126 126
         ],
127
-        modearr:[{ id: 0, name: '不限' },{ id: 1, name: 'HD' },{ id: 2, name: 'HDF' },{ id: 3, name: 'HD + HP' },{ id: 4, name: 'HP' },
127
+        modearr:[{ id: 1, name: 'HD' },{ id: 2, name: 'HDF' },{ id: 3, name: 'HD + HP' },{ id: 4, name: 'HP' },
128 128
           { id: 5, name: 'HF' },{ id: 6, name: 'SCUF' },{ id: 7, name: 'IUF' },{ id: 8, name: 'HFHD' },{ id: 9, name: 'HFHD+HP' },
129 129
           { id: 10, name: 'PHF' },{ id: 11, name: 'HFR' },{ id: 12, name: 'HDF+HP' },{ id: 13, name: 'CRRT' },{ id: 14, name: '腹水回输' },
130 130
           { id:19, name:"IUF+HD"},{ id:20, name:"UF"},{ id:21, name:"HD+"},{ id:22, name:"血浆胆红素吸附+HDF"},{ id:23, name:"血浆胆红素吸附"},
@@ -135,103 +135,6 @@ import { forEach } from 'jszip';
135 135
         date_mode_options:[{value:1,label:'按周'},{value:2,label:'按天'},{value:3,label:'按月'},{value:4,label:'按年'}],
136 136
         source_options:[{value:1,label:'以开始透析为准'},{value:2,label:'以排班为准'}],
137 137
         bar_xAxis:[],
138
-        // bar: {
139
-        //   title: {
140
-        //     text: "ECharts 入门示例"
141
-        //   },
142
-        //   tooltip: {},
143
-        //   legend: {
144
-        //     data: [],
145
-        //     left: 0
146
-        //   },
147
-        //   xAxis: {
148
-        //     data: []
149
-        //   },
150
-        //   yAxis: {
151
-        //     axisLabel: {
152
-        //       formatter: "{value} %"
153
-        //     },
154
-        //     show: false
155
-        //   },
156
-        //   series: [
157
-        //     {
158
-        //       name: "",
159
-        //       type: "bar",
160
-        //       data: [],
161
-        //       barWidth: 30,
162
-        //       label: {
163
-        //         normal: {
164
-        //           show: true,
165
-        //           position: "top",
166
-        //           formatter: (params) => {
167
-        //             // if(this.percent.length > 0){
168
-        //             //   let str = ''
169
-        //             //   str = params.data + '('+ this.percent[params.dataIndex] +'%)'
170
-        //             //   return str
171
-        //             // }else{
172
-        //             //   let str = ''
173
-        //             //   str = params.data
174
-        //             //   return str
175
-        //             // }
176
-        //           }
177
-        //         }
178
-        //       },
179
-        //       //配置样式
180
-        //       itemStyle: {
181
-        //         //通常情况下:
182
-
183
-        //         //每个柱子的颜色即为colorList数组里的每一项,如果柱子数目多于colorList的长度,则柱子颜色循环使用该数组
184
-        //         normal: {
185
-        //           color: function(params) {
186
-        //             //我这边就两个柱子,大体就两个柱子颜色渐变,所以数组只有两个值,多个颜色就多个值
187
-        //             var colorList = [
188
-        //               ["#A9E0F3", "#9FBDFC"],
189
-
190
-        //               ["#FFD7C0", "#FF9994"]
191
-        //             ];
192
-
193
-        //             var index = params.dataIndex;
194
-        //             if (params.dataIndex >= colorList.length) {
195
-        //               index = params.dataIndex % colorList.length;
196
-        //             }
197
-
198
-        //             return new echarts.graphic.LinearGradient(0, 0, 0, 1, [
199
-        //               { offset: 0, color: colorList[index][0] },
200
-        //               // { offset: 0.5, color: colorList[index][1] },
201
-        //               { offset: 1, color: colorList[index][1] }
202
-        //             ]);
203
-        //           },
204
-        //           barBorderRadius: [5, 5, 0, 0] //柱状角成椭圆形
205
-        //         },
206
-
207
-        //         //鼠标悬停时:
208
-        //         emphasis: {
209
-        //           shadowBlur: 10,
210
-        //           shadowOffsetX: 0,
211
-        //           shadowColor: "rgba(0, 0, 0, 0.2)"
212
-        //         }
213
-        //       }
214
-        //     }
215
-        //   ],
216
-        //   dataZoom: [
217
-        //     {
218
-        //       // Y轴固定,让内容滚动
219
-        //       type: 'slider',
220
-        //       show: false,
221
-        //       xAxisIndex: [0],
222
-        //       start: 1,
223
-        //       end: 20, // 设置X轴刻度之间的间隔(根据数据量来调整)
224
-        //       zoomLock: true // 锁定区域禁止缩放(鼠标滚动会缩放,所以禁止)
225
-        //     },
226
-        //     {
227
-        //       type: 'inside',
228
-        //       xAxisIndex: [0],
229
-        //       start: 1,
230
-        //       end: 20,
231
-        //       zoomLock: true // 锁定区域禁止缩放
232
-        //     }
233
-        //   ]
234
-        // }
235 138
       }
236 139
     },
237 140
     methods:{
@@ -243,7 +146,7 @@ import { forEach } from 'jszip';
243 146
       getecharts(){
244 147
         var chartDom = document.getElementById('mychart')
245 148
         var myChart = echarts.init(chartDom);
246
-        
149
+
247 150
         const params={
248 151
           start_date:this.start_date,
249 152
           end_date:this.end_date,
@@ -255,7 +158,7 @@ import { forEach } from 'jszip';
255 158
           if(response.data.state ==1){
256 159
             const modeoptions = []
257 160
             const xAxis = []
258
-            var yAxis = [] 
161
+            var yAxis = []
259 162
             const list = response.data.data.list
260 163
             list.forEach(item =>{
261 164
               const obj ={
@@ -263,7 +166,12 @@ import { forEach } from 'jszip';
263 166
                 name:this.getmodearr(item.mode_id)
264 167
               }
265 168
               yAxis.push(item.count)
266
-              xAxis.push(this.getmodearr(item.mode_id))
169
+              if(this.mode == 0){
170
+                xAxis.push(this.getmodearr(item.mode_id))
171
+              }else{
172
+                console.log('item.data',item);
173
+                xAxis.push(item.date)
174
+              }
267 175
               modeoptions.push(obj)
268 176
             })
269 177
             this.bar_xAxis = xAxis
@@ -324,7 +232,7 @@ import { forEach } from 'jszip';
324 232
       sete_click(){
325 233
         this.getecharts()
326 234
       },
327
-      // 下载 
235
+      // 下载
328 236
       Download_click(){
329 237
         const options ={
330 238
           allowTaint: true,
@@ -343,7 +251,7 @@ import { forEach } from 'jszip';
343 251
           console.log('1111',url);
344 252
           var link= document.createElement("a");
345 253
         //   //将生成的图片url赋值给a标签的href属性
346
-          link.href = url; 
254
+          link.href = url;
347 255
         //   //设置下载的文件名
348 256
           link.download = "页面截图.jpg";
349 257
           // // 将a标签插入dom中
@@ -419,12 +327,13 @@ import { forEach } from 'jszip';
419 327
           // this.end_date = date.getFullYear() + "-" + (date.getMonth() + 1) + "-" + date.getDate();
420 328
           this.end_date = date.getFullYear() + "-" + mm + "-" + dd ;
421 329
           console.log('this.end_date',this.end_date);
422
-          
330
+
423 331
         }else if(eve ==4){
424 332
           this.start_date = this.getFirstDayOfMonth(new Date())
425 333
           this.end_date = this.getTime(new Date())
426 334
         }else if(eve ==5){
427
-          this.gettopMonth()
335
+          this.getLastMonthFirstDay()
336
+          this.getLastMonthLastDay()
428 337
         }else if(eve == 6){
429 338
           this.start_date = this.getFirstDayOfYear(new Date())
430 339
           this.end_date = this.getTime(new Date())
@@ -454,7 +363,7 @@ import { forEach } from 'jszip';
454 363
       },
455 364
       // 本周
456 365
       getFirstDayOfWeek(date){
457
-        var weekday = date.getDay() 
366
+        var weekday = date.getDay()
458 367
         date.setDate(date.getDate()-weekday+1);//往前算(weekday-1)天,年份、月份会自动变化
459 368
         return this.timeFormat(date);
460 369
       },
@@ -463,27 +372,29 @@ import { forEach } from 'jszip';
463 372
         date.setDate(1);
464 373
         return this.timeFormat(date);
465 374
       },
466
-      // 上个月
467
-      gettopMonth(){
468
-        var currentDate = new Date();
469
-        var month=currentDate.getMonth()+(-1);
470
-        if(month<0){
471
-          var n = parseInt((-month)/12);
472
-          month += n*12;
473
-          currentDate.setFullYear(currentDate.getFullYear()-n);
474
-        }
475
-        currentDate = new Date(currentDate.setMonth(month));
476
-        //获得当前月份0-11  
477
-        var currentMonth = currentDate.getMonth(); 
478
-        //获得当前年份4位年  
479
-        var currentYear = currentDate.getFullYear(); 
480
-        //获得上一个月的第一天  
481
-        this.start_date = this.getTime(new Date(currentYear, currentMonth-1,1)); 
482
-        //获得上一月的最后一天  
483
-        this.end_date = this.getTime(new Date(currentYear, currentMonth, 0));
484
-       console.log('11111',this.start_date);
485
-       console.log('22222',this.end_date);
375
+      //上个月第一天
376
+      getLastMonthFirstDay() {
377
+         var date = new Date();
378
+          date.setDate(0);
379
+          var y = date.getFullYear(); //获取年份
380
+          var m = date.getMonth() + 1; //获取月份
381
+          m = m < 10 ? "0" + m : m;
382
+          this.start_date = [y, m, '01'].join("-")
383
+          // return [y, m, '01'].join("-");
384
+      },
385
+      // 上个月最后一天
386
+      getLastMonthLastDay() {
387
+         var date = new Date();
388
+          date.setDate(0);
389
+          var y = date.getFullYear(); //获取年份
390
+          var m = date.getMonth() + 1; //获取月份
391
+          var d = new Date(y, m, 0).getDate(); //获取当月最后一日
392
+          m = m < 10 ? "0" + m : m; //月份补 0
393
+          d = d < 10 ? "0" + d : d; //日数补 0
394
+          this.end_date = [y, m, d].join("-")
395
+          // return [y, m, d].join("-");
486 396
       },
397
+
487 398
       // 本年
488 399
       getFirstDayOfYear (date) {
489 400
         date.setDate(1);
@@ -491,29 +402,29 @@ import { forEach } from 'jszip';
491 402
         return this.timeFormat(date);
492 403
       },
493 404
       // 上一年第一天
494
-      getLastYearFirstDay() {  
495
-          let date = new Date();  
496
-         const year= date.setFullYear(date.getFullYear() - 1); // 设置年份为前一年  
497
-         const start_month= date.setMonth(0); // 设置月份为1月(注意月份是从0开始的)  
405
+      getLastYearFirstDay() {
406
+          let date = new Date();
407
+         const year= date.setFullYear(date.getFullYear() - 1); // 设置年份为前一年
408
+         const start_month= date.setMonth(0); // 设置月份为1月(注意月份是从0开始的)
498 409
          const start_day = date.setDate(1); // 设置日期为1日
499
-        //  const last_month = date.setMonth(11); // 设置月份为12月  
500
-        //  const last_day = date.setDate(0); // 设置日期为0,这将自动设置为该月的最后一天  
410
+        //  const last_month = date.setMonth(11); // 设置月份为12月
411
+        //  const last_day = date.setDate(0); // 设置日期为0,这将自动设置为该月的最后一天
501 412
         //  this.start_date = year+ "-" +start_month+ "-" +start_day
502 413
          this.start_date = this.getTime(start_day)
503 414
         //  return this.start_date
504
-      }, 
415
+      },
505 416
       // 上一年最后一天
506
-      getLastYearLastDay() {  
507
-          let date = new Date();  
508
-          const year= date.setFullYear(date.getFullYear() - 1); // 设置年份为前一年  
509
-          const last_month = date.setMonth(12); // 设置月份为12月  
510
-          const last_day = date.setDate(0);// 设置日期为0,这将自动设置为该月的最后一天  
417
+      getLastYearLastDay() {
418
+          let date = new Date();
419
+          const year= date.setFullYear(date.getFullYear() - 1); // 设置年份为前一年
420
+          const last_month = date.setMonth(12); // 设置月份为12月
421
+          const last_day = date.setDate(0);// 设置日期为0,这将自动设置为该月的最后一天
511 422
           // this.end_date =  year+ "-" +last_month+ "-" +last_day
512 423
           this.end_date = this.getTime(last_day)
513 424
           console.log('this.end_date',this.end_date);
514
-          // return this.end_date;  
515
-      }, 
516
-      
425
+          // return this.end_date;
426
+      },
427
+
517 428
       // 日期格式化
518 429
       timeFormat(date) {
519 430
           if (!date || typeof(date) === "string") {
@@ -534,7 +445,7 @@ import { forEach } from 'jszip';
534 445
 
535 446
           return y + "-" + m + "-" + d;
536 447
       },
537
-      // 
448
+      // bolb类型转换
538 449
       dataURLtoBlob(dataURL) {
539 450
         const arr = dataURL.split(',');
540 451
         const mime = arr[0].match(/:(.*?);/)[1];
@@ -546,14 +457,41 @@ import { forEach } from 'jszip';
546 457
         }
547 458
         return new Blob([u8arr], { type: mime });
548 459
       },
460
+      // 透析模式
461
+      modechange(eve){
462
+        console.log(eve);
463
+
464
+      },
465
+      // 透析模式数据
466
+      // getmodelist(){
467
+      //   const params={
468
+      //     start_date:this.start_date,
469
+      //     end_date:this.end_date,
470
+      //     mode:0,
471
+      //     origin:1,
472
+      //     time_way:1,
473
+      //   }
474
+      //   Getdialysistotal(params).then(response =>{
475
+      //     const list = response.data.data.list
476
+      //     const modeoptions = []
477
+      //     list.forEach(item =>{
478
+      //       const obj ={
479
+      //         id:item.mode_id,
480
+      //         name:this.getmodearr(item.mode_id)
481
+      //       }
482
+      //       modeoptions.push(obj)
483
+      //     })
484
+      //     this.mode_options = modeoptions
485
+      //   })
486
+      // }
549 487
     },
550 488
     mounted(){
551 489
       this.getecharts()
552 490
     },
553 491
     created(){
554 492
       this.start_date = this.getFirstDayOfMonth(new Date())
555
-      // this.gettotal()
493
+      // this.getmodelist()
556 494
     },
557 495
 
558 496
   }
559
-</script>
497
+</script>

+ 171 - 128
src/xt_pages/Dialysisanalysis/new_otherIndicators/components/Total_table.vue View File

@@ -3,7 +3,7 @@
3 3
     <div class="position">
4 4
       <div>
5 5
         <span>
6
-          <el-button @click="return_click" type="text" icon="el-icon-arrow-left">返回</el-button> 
6
+          <el-button @click="return_click" type="text" icon="el-icon-arrow-left">返回</el-button>
7 7
         </span>&nbsp;&nbsp;
8 8
         <span>透析总量详情</span>
9 9
       </div>
@@ -39,7 +39,7 @@
39 39
               style="width: 150px;">
40 40
             </el-date-picker>
41 41
           </div>
42
-          
42
+
43 43
           <div>
44 44
             透析模式:
45 45
             <el-select v-model="mode"  placeholder="请选择" style="width: 120px;">
@@ -80,15 +80,19 @@
80 80
             <el-button type="primary" @click="Download_click">下载</el-button>
81 81
           </div>
82 82
         </div>
83
-        <!-- 表格 -->
84
-        <div>
85
-          <el-table :data="patientTableData"
86
-            style="width: 100%;border-collapse: collapse;" height="400" border
87
-            @cell-click="cellclick">
88
-            <el-table-column v-for="column in columns" :key="column.prop" 
89
-              :prop="column.prop?column.prop:''" :label="column.label?column.label:''">
83
+        <!-- 表格  :fixed="column.label=='日期'?left:''" :fixed="column.label=='日期'?true:false"-->
84
+        <div style="margin-top: 10px;">
85
+          <el-table :data="patientTableData" ref="table"
86
+            style="width: 100%;border-collapse: collapse;" height="calc(80vh - 50px)" border
87
+            show-summary
88
+            :header-cell-style="{'text-align':'center'}"
89
+            :cell-style="{'text-align':'center'}"
90
+            @cell-click="cellclick"
91
+            :cell-class-name="cell_classname">
92
+            <el-table-column v-for="column in columns" :key="column.prop"
93
+              :prop="column.prop?column.prop:''" :label="column.label?column.label:''" :fixed="column.label=='日期'?true:false">
90 94
             </el-table-column>
91
-            
95
+
92 96
           </el-table>
93 97
         </div>
94 98
       </div>
@@ -186,7 +190,7 @@
186 190
         </span>
187 191
       </el-dialog>
188 192
     </div>
189
-    
193
+
190 194
   </div>
191 195
 </template>
192 196
 <script>
@@ -202,7 +206,7 @@ export default {
202 206
       start_date:'',
203 207
       end_date:this.getTime(new Date()),
204 208
       mode:0,
205
-      date_mode:1,
209
+      date_mode:2,
206 210
       source:1,
207 211
       dialogVisible:false,
208 212
       tableData:[],
@@ -225,9 +229,9 @@ export default {
225 229
         { id:19, name:"IUF+HD"},{ id:20, name:"UF"},{ id:21, name:"HD+"},{ id:22, name:"血浆胆红素吸附+HDF"},{ id:23, name:"血浆胆红素吸附"},
226 230
         { 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"},
227 231
       ],
228
-      date_mode_options:[{value:1,label:'按周'},{value:2,label:'按天'},{value:3,label:'按月'},{value:4,label:'按年'}],
232
+      date_mode_options:[{value:2,label:'按周'},{value:1,label:'按天'},{value:3,label:'按月'},{value:4,label:'按年'}],
229 233
       source_options:[{value:1,label:'以开始透析为准'},{value:2,label:'以排班为准'}],
230
-      
234
+
231 235
     }
232 236
   },
233 237
   methods:{
@@ -279,7 +283,7 @@ export default {
279 283
             column.unshift(arr)
280 284
             column.push(arr1)
281 285
             this.columns = column
282
-            
286
+
283 287
             const detil = []
284 288
             for(let i in this.columns){
285 289
               detil.push(this.columns[i].label)
@@ -300,23 +304,31 @@ export default {
300 304
     },
301 305
     // 打开弹窗
302 306
     cellclick(row, column, cell, event){
303
-      this.dialogVisible = true
304
-      const date =row['日期']
305
-      // const mode_name = column.label
306
-      var mode_id = ''
307
-      for(let i in this.mode_options){
308
-        if(column.label == this.mode_options[i].name){
309
-          mode_id = this.mode_options[i].id
307
+      console.log('row',row[column.property]);
308
+      console.log('column',column.property);
309
+      console.log('cell',cell);
310
+      console.log('event',event);
311
+      if(row[column.property] == '' || column.property == '日期' || column.property == '合计'){
312
+        this.dialogVisible = false
313
+      }else{
314
+        this.dialogVisible = true
315
+        const date =row['日期']
316
+        // const mode_name = column.label
317
+        var mode_id = ''
318
+        for(let i in this.mode_options){
319
+          if(column.label == this.mode_options[i].name){
320
+            mode_id = this.mode_options[i].id
321
+          }
310 322
         }
323
+        const params={
324
+          date:date,
325
+          mode:mode_id,
326
+          origin:this.source,
327
+          page:this.currentPage,
328
+          limit:this.limit
329
+        }
330
+        this.Getdialysisdetailsinfo(params)
311 331
       }
312
-      const params={
313
-        date:date,
314
-        mode:mode_id,
315
-        origin:this.source,
316
-        page:this.currentPage,
317
-        limit:this.limit
318
-      }
319
-      this.Getdialysisdetailsinfo(params)
320 332
       // console.log('row',row,this.date);
321 333
       // console.log('column',column);
322 334
       // console.log('cell',cell);
@@ -357,7 +369,7 @@ export default {
357 369
     },
358 370
     //导出excel
359 371
     exportExcel(){
360
-        let tableData = [ 
372
+        let tableData = [
361 373
           ['序号','日期', '透析号', '患者姓名', '性别','年龄','透析方式', '机号', '治疗医生','治疗护士', '开始透析时间','结束透析时间','实际治疗时长']//导出表头
362 374
         ]
363 375
         this.tableData.forEach((item,index) =>{
@@ -438,63 +450,64 @@ export default {
438 450
     },
439 451
     // 首先定义一个getPreviousDate函数,方便调用
440 452
      // 选择日期
441
-     datachange(eve){
442
-        if(eve ==1){
443
-          this.start_date = this.getPreviousDate(7)
444
-          this.end_date = this.getTime(new Date())
445
-        }else if(eve==2){
446
-          this.start_date = this.getFirstDayOfWeek(new Date())
447
-          this.end_date = this.getTime(new Date())
448
-          console.log('this.start_date', this.start_date);
449
-        }else if(eve ==3){
450
-          var date=new Date()
451
-          date.setDate(date.getDate()-7 - date.getDay() + 1);
452
-          var m =''
453
-          var d = ''
454
-          if(date.getMonth() + 1<10){
455
-            m = '0'+(date.getMonth() + 1)
456
-          }else{
457
-             m = date.getMonth() + 1
458
-          }
459
-          if(date.getDate()<10){
460
-             d = '0'+date.getDate()
461
-          }else{
462
-            d = date.getDate()
463
-          }
464
-          // this.start_date = date.getFullYear() + "-" + (date.getMonth() + 1) + "-" + date.getDate() ;
465
-          this.start_date = date.getFullYear() + "-" + m + "-" + d ;
466
-          date.setDate(date.getDate() +6);
467
-          var mm = ''
468
-          var dd = ''
469
-          if(date.getMonth() + 1<10){
470
-            mm = '0'+(date.getMonth() + 1)
471
-          }else{
472
-            mm = date.getMonth() + 1
473
-          }
474
-          if(date.getDate()<10){
475
-            dd = '0'+date.getDate()
476
-          }else{
477
-            dd = date.getDate()
478
-          }
479
-          // if(date.getMonth() + 1<10)
480
-          // this.end_date = date.getFullYear() + "-" + (date.getMonth() + 1) + "-" + date.getDate();
481
-          this.end_date = date.getFullYear() + "-" + mm + "-" + dd ;
482
-          console.log('this.end_date',this.end_date);
483
-          
484
-        }else if(eve ==4){
485
-          this.start_date = this.getFirstDayOfMonth(new Date())
486
-          this.end_date = this.getTime(new Date())
487
-        }else if(eve ==5){
488
-          this.gettopMonth()
489
-        }else if(eve == 6){
490
-          this.start_date = this.getFirstDayOfYear(new Date())
491
-          this.end_date = this.getTime(new Date())
492
-        }else if(eve == 7){
493
-          this.getLastYearFirstDay()
494
-          this.getLastYearLastDay()
453
+    datachange(eve){
454
+      if(eve ==1){
455
+        this.start_date = this.getPreviousDate(7)
456
+        this.end_date = this.getTime(new Date())
457
+      }else if(eve==2){
458
+        this.start_date = this.getFirstDayOfWeek(new Date())
459
+        this.end_date = this.getTime(new Date())
460
+        console.log('this.start_date', this.start_date);
461
+      }else if(eve ==3){
462
+        var date=new Date()
463
+        date.setDate(date.getDate()-7 - date.getDay() + 1);
464
+        var m =''
465
+        var d = ''
466
+        if(date.getMonth() + 1<10){
467
+          m = '0'+(date.getMonth() + 1)
468
+        }else{
469
+            m = date.getMonth() + 1
495 470
         }
496
-        console.log('eve',eve);
497
-      },
471
+        if(date.getDate()<10){
472
+            d = '0'+date.getDate()
473
+        }else{
474
+          d = date.getDate()
475
+        }
476
+        // this.start_date = date.getFullYear() + "-" + (date.getMonth() + 1) + "-" + date.getDate() ;
477
+        this.start_date = date.getFullYear() + "-" + m + "-" + d ;
478
+        date.setDate(date.getDate() +6);
479
+        var mm = ''
480
+        var dd = ''
481
+        if(date.getMonth() + 1<10){
482
+          mm = '0'+(date.getMonth() + 1)
483
+        }else{
484
+          mm = date.getMonth() + 1
485
+        }
486
+        if(date.getDate()<10){
487
+          dd = '0'+date.getDate()
488
+        }else{
489
+          dd = date.getDate()
490
+        }
491
+        // if(date.getMonth() + 1<10)
492
+        // this.end_date = date.getFullYear() + "-" + (date.getMonth() + 1) + "-" + date.getDate();
493
+        this.end_date = date.getFullYear() + "-" + mm + "-" + dd ;
494
+        console.log('this.end_date',this.end_date);
495
+
496
+      }else if(eve ==4){
497
+        this.start_date = this.getFirstDayOfMonth(new Date())
498
+        this.end_date = this.getTime(new Date())
499
+      }else if(eve ==5){
500
+        this.getLastMonthFirstDay()
501
+        this.getLastMonthLastDay()
502
+      }else if(eve == 6){
503
+        this.start_date = this.getFirstDayOfYear(new Date())
504
+        this.end_date = this.getTime(new Date())
505
+      }else if(eve == 7){
506
+        this.getLastYearFirstDay()
507
+        this.getLastYearLastDay()
508
+      }
509
+      console.log('eve',eve);
510
+    },
498 511
     getPreviousDate(numOfDays) {
499 512
       var date = new Date();
500 513
       date.setDate(date.getDate() - numOfDays);
@@ -514,7 +527,7 @@ export default {
514 527
     },
515 528
     // 本周
516 529
     getFirstDayOfWeek(date){
517
-      var weekday = date.getDay() 
530
+      var weekday = date.getDay()
518 531
       date.setDate(date.getDate()-weekday+1);//往前算(weekday-1)天,年份、月份会自动变化
519 532
       return this.timeFormat(date);
520 533
     },
@@ -523,27 +536,29 @@ export default {
523 536
       date.setDate(1);
524 537
       return this.timeFormat(date);
525 538
     },
526
-    // 上个月
527
-    gettopMonth(){
528
-      var currentDate = new Date();
529
-      var month=currentDate.getMonth()+(-1);
530
-      if(month<0){
531
-        var n = parseInt((-month)/12);
532
-        month += n*12;
533
-        currentDate.setFullYear(currentDate.getFullYear()-n);
534
-      }
535
-      currentDate = new Date(currentDate.setMonth(month));
536
-      //获得当前月份0-11  
537
-      var currentMonth = currentDate.getMonth(); 
538
-      //获得当前年份4位年  
539
-      var currentYear = currentDate.getFullYear(); 
540
-      //获得上一个月的第一天  
541
-      this.start_date = this.getTime(new Date(currentYear, currentMonth-1,1)); 
542
-      //获得上一月的最后一天  
543
-      this.end_date = this.getTime(new Date(currentYear, currentMonth, 0));
544
-      console.log('11111',this.start_date);
545
-      console.log('22222',this.end_date);
539
+     //上个月第一天
540
+    getLastMonthFirstDay() {
541
+        var date = new Date();
542
+        date.setDate(0);
543
+        var y = date.getFullYear(); //获取年份
544
+        var m = date.getMonth() + 1; //获取月份
545
+        m = m < 10 ? "0" + m : m;
546
+        this.start_date = [y, m, '01'].join("-")
547
+        // return [y, m, '01'].join("-");
548
+    },
549
+    // 上个月最后一天
550
+    getLastMonthLastDay() {
551
+        var date = new Date();
552
+        date.setDate(0);
553
+        var y = date.getFullYear(); //获取年份
554
+        var m = date.getMonth() + 1; //获取月份
555
+        var d = new Date(y, m, 0).getDate(); //获取当月最后一日
556
+        m = m < 10 ? "0" + m : m; //月份补 0
557
+        d = d < 10 ? "0" + d : d; //日数补 0
558
+        this.end_date = [y, m, d].join("-")
559
+        // return [y, m, d].join("-");
546 560
     },
561
+
547 562
     // 本年
548 563
     getFirstDayOfYear (date) {
549 564
       date.setDate(1);
@@ -551,29 +566,29 @@ export default {
551 566
       return this.timeFormat(date);
552 567
     },
553 568
     // 上一年第一天
554
-    getLastYearFirstDay() {  
555
-        let date = new Date();  
556
-        const year= date.setFullYear(date.getFullYear() - 1); // 设置年份为前一年  
557
-        const start_month= date.setMonth(0); // 设置月份为1月(注意月份是从0开始的)  
569
+    getLastYearFirstDay() {
570
+        let date = new Date();
571
+        const year= date.setFullYear(date.getFullYear() - 1); // 设置年份为前一年
572
+        const start_month= date.setMonth(0); // 设置月份为1月(注意月份是从0开始的)
558 573
         const start_day = date.setDate(1); // 设置日期为1日
559
-      //  const last_month = date.setMonth(11); // 设置月份为12月  
560
-      //  const last_day = date.setDate(0); // 设置日期为0,这将自动设置为该月的最后一天  
574
+      //  const last_month = date.setMonth(11); // 设置月份为12月
575
+      //  const last_day = date.setDate(0); // 设置日期为0,这将自动设置为该月的最后一天
561 576
       //  this.start_date = year+ "-" +start_month+ "-" +start_day
562 577
         this.start_date = this.getTime(start_day)
563 578
       //  return this.start_date
564
-    }, 
579
+    },
565 580
     // 上一年最后一天
566
-    getLastYearLastDay() {  
567
-        let date = new Date();  
568
-        const year= date.setFullYear(date.getFullYear() - 1); // 设置年份为前一年  
569
-        const last_month = date.setMonth(12); // 设置月份为12月  
570
-        const last_day = date.setDate(0);// 设置日期为0,这将自动设置为该月的最后一天  
581
+    getLastYearLastDay() {
582
+        let date = new Date();
583
+        const year= date.setFullYear(date.getFullYear() - 1); // 设置年份为前一年
584
+        const last_month = date.setMonth(12); // 设置月份为12月
585
+        const last_day = date.setDate(0);// 设置日期为0,这将自动设置为该月的最后一天
571 586
         // this.end_date =  year+ "-" +last_month+ "-" +last_day
572 587
         this.end_date = this.getTime(last_day)
573 588
         console.log('this.end_date',this.end_date);
574
-        // return this.end_date;  
575
-    }, 
576
-    
589
+        // return this.end_date;
590
+    },
591
+
577 592
     // 日期格式化
578 593
     timeFormat(date) {
579 594
         if (!date || typeof(date) === "string") {
@@ -594,7 +609,7 @@ export default {
594 609
 
595 610
         return y + "-" + m + "-" + d;
596 611
     },
597
-    // 
612
+    //
598 613
     dataURLtoBlob(dataURL) {
599 614
       const arr = dataURL.split(',');
600 615
       const mime = arr[0].match(/:(.*?);/)[1];
@@ -639,7 +654,7 @@ export default {
639 654
             yearBirth = userCard.substring(6,10);
640 655
             monthBirth = userCard.substring(10,12);
641 656
             dayBirth = userCard.substring(12,14);
642
-            
657
+
643 658
           }
644 659
           //获取当前年月日并计算年龄
645 660
           var myDate = new Date();
@@ -654,7 +669,7 @@ export default {
654 669
       } else {
655 670
         return ''
656 671
       }
657
-      
672
+
658 673
     },
659 674
     getmode(ids){
660 675
       const option = this.mode_options
@@ -695,8 +710,9 @@ export default {
695 710
             this.docList = list
696 711
             this.operators = response.data.data.operators
697 712
         }
698
-      })  
713
+      })
699 714
     },
715
+    // 转换护士名字
700 716
     getnurse(ids){
701 717
       const nurse = this.nurseList
702 718
       for(let i in nurse){
@@ -705,6 +721,7 @@ export default {
705 721
         }
706 722
       }
707 723
     },
724
+    // 转换医生名字
708 725
     getdoctor(ids){
709 726
       const doctor = this.docList
710 727
       for(let i in doctor){
@@ -712,6 +729,22 @@ export default {
712 729
           return doctor[i].user_name
713 730
         }
714 731
       }
732
+    },
733
+    // 单元格样式
734
+    cell_classname({row, column, rowIndex, columnIndex}){
735
+      if(columnIndex!=0 && column.property != '合计'){
736
+        return 'cell_class'
737
+      }
738
+      // if(row[column.property] !=''&&column.property !='日期'){
739
+      //   return 'cell_class'
740
+      // }
741
+    },
742
+    // 固定列表格错位
743
+    doLayout(){
744
+      let that = this
745
+        this.$nextTick(() => {
746
+          that.$refs.table.doLayout()
747
+        })
715 748
     }
716 749
   },
717 750
   created(){
@@ -719,6 +752,16 @@ export default {
719 752
     this.getdetil()
720 753
     this.getAllNurseList()
721 754
     this.getAllDoctorList()
755
+  },
756
+  watch:{
757
+    patientTableData(val){
758
+      this.doLayout()
759
+    }
722 760
   }
723 761
 }
724
-</script>
762
+</script>
763
+<style>
764
+.cell_class{
765
+  color: #409eff;
766
+}
767
+</style>

+ 41 - 30
src/xt_pages/Dialysisanalysis/new_otherIndicators/components/anticoagulant.vue View File

@@ -208,7 +208,7 @@ import html2canvas from "html2canvas"
208 208
         dialyze_options:[],//抗凝剂选项数组
209 209
         anticoagulant:[],//全部抗凝剂数组
210 210
         tableData:[],
211
-        total:'',
211
+        total:0,
212 212
        
213 213
         date_options:[{value:1,label:'最近七天'},{value:2,label:'本周'},{value:3,label:'上周'},{value:4,label:'本月'},
214 214
                       {value:5,label:'上月'},{value:6,label:'本年'},{value:7,label:'上一年'}
@@ -300,9 +300,10 @@ import html2canvas from "html2canvas"
300 300
             myChart.setOption(option);
301 301
             myChart.on('click',params =>{
302 302
               this.anticoagulant_dialog = true
303
-              this.getGetdetail()
304 303
               this.getbarxAxis()
305
-              console.log('params',params);
304
+              const id = this.getanticoagulant_name(params.name)
305
+              this.getGetdetail(id)
306
+              
306 307
             })
307 308
           }
308 309
           console.log('response',response);
@@ -310,9 +311,9 @@ import html2canvas from "html2canvas"
310 311
         
311 312
       },
312 313
       // 详情数据源
313
-      getGetdetail(){
314
+      getGetdetail(name){
314 315
         const params ={
315
-          anticoagulant:this.dialyze_value,
316
+          anticoagulant:name,
316 317
           start_date:this.start_date,
317 318
           end_date:this.end_date,
318 319
           page:this.currentPage,
@@ -348,7 +349,7 @@ import html2canvas from "html2canvas"
348 349
       },
349 350
       // 详情查询
350 351
       deil_click(){
351
-        this.getGetdetail()
352
+        this.getGetdetail(this.dialyze_value)
352 353
       },
353 354
       //导出excel
354 355
       exportExcel(){
@@ -456,7 +457,8 @@ import html2canvas from "html2canvas"
456 457
           this.start_date = this.getFirstDayOfMonth(new Date())
457 458
           this.end_date = this.getTime(new Date())
458 459
         }else if(eve ==5){
459
-          this.gettopMonth()
460
+          this.getLastMonthFirstDay()
461
+          this.getLastMonthLastDay()
460 462
         }else if(eve == 6){
461 463
           this.start_date = this.getFirstDayOfYear(new Date())
462 464
           this.end_date = this.getTime(new Date())
@@ -495,26 +497,27 @@ import html2canvas from "html2canvas"
495 497
         date.setDate(1);
496 498
         return this.timeFormat(date);
497 499
       },
498
-      // 上个月
499
-      gettopMonth(){
500
-        var currentDate = new Date();
501
-        var month=currentDate.getMonth()+(-1);
502
-        if(month<0){
503
-          var n = parseInt((-month)/12);
504
-          month += n*12;
505
-          currentDate.setFullYear(currentDate.getFullYear()-n);
506
-        }
507
-        currentDate = new Date(currentDate.setMonth(month));
508
-        //获得当前月份0-11  
509
-        var currentMonth = currentDate.getMonth(); 
510
-        //获得当前年份4位年  
511
-        var currentYear = currentDate.getFullYear(); 
512
-        //获得上一个月的第一天  
513
-        this.start_date = this.getTime(new Date(currentYear, currentMonth-1,1)); 
514
-        //获得上一月的最后一天  
515
-        this.end_date = this.getTime(new Date(currentYear, currentMonth, 0));
516
-       console.log('11111',this.start_date);
517
-       console.log('22222',this.end_date);
500
+      //上个月第一天
501
+      getLastMonthFirstDay() {
502
+          var date = new Date();
503
+          date.setDate(0);
504
+          var y = date.getFullYear(); //获取年份
505
+          var m = date.getMonth() + 1; //获取月份
506
+          m = m < 10 ? "0" + m : m;
507
+          this.start_date = [y, m, '01'].join("-")
508
+          // return [y, m, '01'].join("-");
509
+      },
510
+      // 上个月最后一天
511
+      getLastMonthLastDay() {
512
+          var date = new Date();
513
+          date.setDate(0);
514
+          var y = date.getFullYear(); //获取年份
515
+          var m = date.getMonth() + 1; //获取月份
516
+          var d = new Date(y, m, 0).getDate(); //获取当月最后一日
517
+          m = m < 10 ? "0" + m : m; //月份补 0
518
+          d = d < 10 ? "0" + d : d; //日数补 0
519
+          this.end_date = [y, m, d].join("-")
520
+          // return [y, m, d].join("-");
518 521
       },
519 522
       // 本年
520 523
       getFirstDayOfYear (date) {
@@ -569,13 +572,13 @@ import html2canvas from "html2canvas"
569 572
       handleSizeChange(val){
570 573
         console.log('333',val);
571 574
         this.limit = val
572
-        this.getGetdetail()
575
+        this.getGetdetail(this.dialyze_value)
573 576
       },
574 577
       // 当前页
575 578
       handleCurrentChange(val){
576 579
         console.log('4444',val);
577 580
         this.currentPage = val
578
-        this.getGetdetail()
581
+        this.getGetdetail(this.dialyze_value)
579 582
       },
580 583
       // 转换时间
581 584
       getTime(val) {
@@ -593,7 +596,6 @@ import html2canvas from "html2canvas"
593 596
         for(let j in this.bar_xAxis){
594 597
           for(let i in this.anticoagulant){
595 598
             if(this.bar_xAxis[j]==this.anticoagulant[i].name){
596
-              console.log('tttt',this.anticoagulant[i]);
597 599
                this.dialyze_options.push(this.anticoagulant[i])
598 600
             }
599 601
           }
@@ -626,6 +628,15 @@ import html2canvas from "html2canvas"
626 628
         }
627 629
         return new Blob([u8arr], { type: mime });
628 630
       },
631
+      // 
632
+      getanticoagulant_name(name){
633
+        const antico_name = this.dialyze_options
634
+        for(let i in antico_name){
635
+          if(antico_name[i].name == name){
636
+            return antico_name[i].id
637
+          }
638
+        }
639
+      }
629 640
     },
630 641
     mounted(){
631 642
       this.getecharts()

+ 72 - 67
src/xt_pages/Dialysisanalysis/new_otherIndicators/components/complete.vue View File

@@ -3,7 +3,7 @@
3 3
     <div class="position">
4 4
       <div>
5 5
         <span>
6
-          <el-button @click="return_click" type="text" icon="el-icon-arrow-left">返回</el-button> 
6
+          <el-button @click="return_click" type="text" icon="el-icon-arrow-left">返回</el-button>
7 7
         </span>&nbsp;&nbsp;
8 8
         <span>透析治疗完成率</span>
9 9
       </div>
@@ -76,7 +76,7 @@
76 76
             <div style="flex: 2;display: flex;">
77 77
               <div>
78 78
                 日期:
79
-                <el-select v-model="date_value" placeholder="请选择" style="width: 100px;">
79
+                <el-select v-model="date_value" @change="datachange" placeholder="请选择" style="width: 100px;">
80 80
                   <el-option
81 81
                     v-for="item in date_options"
82 82
                     :key="item.value"
@@ -119,7 +119,7 @@
119 119
             <div style="flex: 1;">
120 120
               <div>
121 121
                 <el-button type="primary" @click="detil_click">查询</el-button>
122
-                
122
+
123 123
                 <el-button type="primary" @click="derive_click">导出</el-button>
124 124
               </div>
125 125
             </div>
@@ -223,10 +223,11 @@ import html2canvas from "html2canvas"
223 223
         limit:50,
224 224
         total:0,
225 225
         tableData:[],
226
-        status_options:[],
226
+        // status_options:[],
227 227
         nurseList:[],
228 228
         operators:[],
229 229
         docList:[],
230
+        status_options:[{value:1,label:'达到透析处方时间'},{value:2,label:'超出处方时间'},{value:3,label:'未到达处方时间'}],
230 231
         date_options:[{value:1,label:'最近七天'},{value:2,label:'本周'},{value:3,label:'上周'},{value:4,label:'本月'},
231 232
                       {value:5,label:'上月'},{value:6,label:'本年'},{value:7,label:'上一年'}
232 233
         ],
@@ -239,7 +240,7 @@ import html2canvas from "html2canvas"
239 240
         ],
240 241
         date_mode_options:[{value:1,label:'按周'},{value:2,label:'按天'},{value:3,label:'按月'},{value:4,label:'按年'}],
241 242
         source_options:[{value:1,label:'以开始透析为准'},{value:2,label:'以排班为准'}],
242
-        bar_xAxis:['HD','HDF','HD + HP','HP','HF','SCUF','IUF'],
243
+        status_id:"",
243 244
       }
244 245
     },
245 246
     methods:{
@@ -271,14 +272,15 @@ import html2canvas from "html2canvas"
271 272
               yAxis.push(key)
272 273
             }
273 274
             const status = []
274
-            for(let i in yAxis){
275
-              const obj ={
276
-                value:(i*1)+1,
277
-                label:yAxis[i]
278
-              }
279
-              status.push(obj)
280
-            }
281
-            this.status_options = status
275
+            // for(let i in yAxis){
276
+            //   const obj ={
277
+            //     value:(i*1)+1,
278
+            //     label:yAxis[i]
279
+            //   }
280
+            //   status.push(obj)
281
+            // }
282
+            // this.status_options = status
283
+            console.log('this.status_options',this.status_options);
282 284
             const option = {
283 285
                 title:{
284 286
                   text:'总数'+total,
@@ -300,10 +302,10 @@ import html2canvas from "html2canvas"
300 302
                 },
301 303
                 series: [
302 304
                   {
303
-                    name: 'Access From',
305
+                    name: '',
304 306
                     type: 'pie',
305 307
                     radius: ['40%', '70%'],
306
-                    avoidLabelOverlap: false,
308
+                    avoidLabelOverlap: true,
307 309
                     itemStyle: {
308 310
                       borderRadius: 10,
309 311
                       borderColor: '#fff',
@@ -349,7 +351,7 @@ import html2canvas from "html2canvas"
349 351
             })
350 352
           }
351 353
         })
352
-        
354
+
353 355
       },
354 356
       // 查询
355 357
       sete_click(){
@@ -357,9 +359,9 @@ import html2canvas from "html2canvas"
357 359
       },
358 360
       // 详情查询
359 361
       detil_click(){
360
-        this.getdetail()
362
+        this.getdetail(this.status_value)
361 363
       },
362
-       // 下载 
364
+       // 下载
363 365
       Download_click(){
364 366
         const options ={
365 367
           allowTaint: true,
@@ -372,7 +374,7 @@ import html2canvas from "html2canvas"
372 374
           const url = URL.createObjectURL(blob);
373 375
           var link= document.createElement("a");
374 376
         //   //将生成的图片url赋值给a标签的href属性
375
-          link.href = url; 
377
+          link.href = url;
376 378
         //   //设置下载的文件名
377 379
           link.download = "透析完成率统计.jpg";
378 380
           // // 将a标签插入dom中
@@ -387,7 +389,7 @@ import html2canvas from "html2canvas"
387 389
       },
388 390
       // 导出excel
389 391
       derive_click(){
390
-        let tableData = [ 
392
+        let tableData = [
391 393
           ['序号', '透析号', '患者姓名', '年龄','透析日期', '处方透析时长', '实际透析时长', '实际差(min)', '主治医生', '主治护士']//导出表头
392 394
         ]
393 395
         this.tableData.forEach((item,index) =>{
@@ -417,7 +419,7 @@ import html2canvas from "html2canvas"
417 419
         const params ={
418 420
           start_date:this.start_date,
419 421
           end_date:this.end_date,
420
-          mode:mode||this.status_value,
422
+          mode:mode,
421 423
           page:this.currentPage,
422 424
           limit:this.limit,
423 425
         }
@@ -426,17 +428,17 @@ import html2canvas from "html2canvas"
426 428
             const list = response.data.data.list
427 429
             const xAxis = []
428 430
             const table = []
429
-            list.forEach((item,index) =>{ 
431
+            list.forEach((item,index) =>{
430 432
               const obj={
431 433
                 index:index+1,
432
-                dialysis_no:item.dialysis_no,     
434
+                dialysis_no:item.dialysis_no,
433 435
                 patient_name:item.patient_name,
434 436
                 age:this.analyzeIDCard(item.id_card_no),
435 437
                 dialysis_date:item.dialysis_date.split('T')[0],
436 438
                 dialysis_duration:item.dialysis_duration,
437 439
                 actual_duration:item.actual_duration,
438 440
                 diff:item.diff,
439
-                doctor:this.getdoctor(item.doctor), 
441
+                doctor:this.getdoctor(item.doctor),
440 442
                 nurse:this.getnurse(item.nurse)
441 443
               }
442 444
               table.push(obj)
@@ -490,12 +492,13 @@ import html2canvas from "html2canvas"
490 492
           // this.end_date = date.getFullYear() + "-" + (date.getMonth() + 1) + "-" + date.getDate();
491 493
           this.end_date = date.getFullYear() + "-" + mm + "-" + dd ;
492 494
           console.log('this.end_date',this.end_date);
493
-          
495
+
494 496
         }else if(eve ==4){
495 497
           this.start_date = this.getFirstDayOfMonth(new Date())
496 498
           this.end_date = this.getTime(new Date())
497 499
         }else if(eve ==5){
498
-          this.gettopMonth()
500
+          this.getLastMonthFirstDay()
501
+          this.getLastMonthLastDay()
499 502
         }else if(eve == 6){
500 503
           this.start_date = this.getFirstDayOfYear(new Date())
501 504
           this.end_date = this.getTime(new Date())
@@ -525,7 +528,7 @@ import html2canvas from "html2canvas"
525 528
       },
526 529
       // 本周
527 530
       getFirstDayOfWeek(date){
528
-        var weekday = date.getDay() 
531
+        var weekday = date.getDay()
529 532
         date.setDate(date.getDate()-weekday+1);//往前算(weekday-1)天,年份、月份会自动变化
530 533
         return this.timeFormat(date);
531 534
       },
@@ -534,27 +537,29 @@ import html2canvas from "html2canvas"
534 537
         date.setDate(1);
535 538
         return this.timeFormat(date);
536 539
       },
537
-      // 上个月
538
-      gettopMonth(){
539
-        var currentDate = new Date();
540
-        var month=currentDate.getMonth()+(-1);
541
-        if(month<0){
542
-          var n = parseInt((-month)/12);
543
-          month += n*12;
544
-          currentDate.setFullYear(currentDate.getFullYear()-n);
545
-        }
546
-        currentDate = new Date(currentDate.setMonth(month));
547
-        //获得当前月份0-11  
548
-        var currentMonth = currentDate.getMonth(); 
549
-        //获得当前年份4位年  
550
-        var currentYear = currentDate.getFullYear(); 
551
-        //获得上一个月的第一天  
552
-        this.start_date = this.getTime(new Date(currentYear, currentMonth-1,1)); 
553
-        //获得上一月的最后一天  
554
-        this.end_date = this.getTime(new Date(currentYear, currentMonth, 0));
555
-       console.log('11111',this.getTime(new Date(currentYear, currentMonth-1,1)));
556
-       console.log('22222',this.getTime(new Date(currentYear, currentMonth, 0)));
540
+       //上个月第一天
541
+       getLastMonthFirstDay() {
542
+          var date = new Date();
543
+          date.setDate(0);
544
+          var y = date.getFullYear(); //获取年份
545
+          var m = date.getMonth() + 1; //获取月份
546
+          m = m < 10 ? "0" + m : m;
547
+          this.start_date = [y, m, '01'].join("-")
548
+          // return [y, m, '01'].join("-");
549
+      },
550
+      // 上个月最后一天
551
+      getLastMonthLastDay() {
552
+          var date = new Date();
553
+          date.setDate(0);
554
+          var y = date.getFullYear(); //获取年份
555
+          var m = date.getMonth() + 1; //获取月份
556
+          var d = new Date(y, m, 0).getDate(); //获取当月最后一日
557
+          m = m < 10 ? "0" + m : m; //月份补 0
558
+          d = d < 10 ? "0" + d : d; //日数补 0
559
+          this.end_date = [y, m, d].join("-")
560
+          // return [y, m, d].join("-");
557 561
       },
562
+
558 563
       // 本年
559 564
       getFirstDayOfYear (date) {
560 565
         date.setDate(1);
@@ -562,28 +567,28 @@ import html2canvas from "html2canvas"
562 567
         return this.timeFormat(date);
563 568
       },
564 569
       // 上一年第一天
565
-      getLastYearFirstDay() {  
566
-          let date = new Date();  
567
-         const year= date.setFullYear(date.getFullYear() - 1); // 设置年份为前一年  
568
-         const start_month= date.setMonth(0); // 设置月份为1月(注意月份是从0开始的)  
570
+      getLastYearFirstDay() {
571
+          let date = new Date();
572
+         const year= date.setFullYear(date.getFullYear() - 1); // 设置年份为前一年
573
+         const start_month= date.setMonth(0); // 设置月份为1月(注意月份是从0开始的)
569 574
          const start_day = date.setDate(1); // 设置日期为1日
570
-        //  const last_month = date.setMonth(11); // 设置月份为12月  
571
-        //  const last_day = date.setDate(0); // 设置日期为0,这将自动设置为该月的最后一天  
575
+        //  const last_month = date.setMonth(11); // 设置月份为12月
576
+        //  const last_day = date.setDate(0); // 设置日期为0,这将自动设置为该月的最后一天
572 577
         //  this.start_date = year+ "-" +start_month+ "-" +start_day
573 578
          this.start_date = this.getTime(start_day)
574 579
         //  return this.start_date
575
-      }, 
580
+      },
576 581
       // 上一年最后一天
577
-      getLastYearLastDay() {  
578
-          let date = new Date();  
579
-          const year= date.setFullYear(date.getFullYear() - 1); // 设置年份为前一年  
580
-          const last_month = date.setMonth(12); // 设置月份为12月  
581
-          const last_day = date.setDate(0);// 设置日期为0,这将自动设置为该月的最后一天  
582
+      getLastYearLastDay() {
583
+          let date = new Date();
584
+          const year= date.setFullYear(date.getFullYear() - 1); // 设置年份为前一年
585
+          const last_month = date.setMonth(12); // 设置月份为12月
586
+          const last_day = date.setDate(0);// 设置日期为0,这将自动设置为该月的最后一天
582 587
           // this.end_date =  year+ "-" +last_month+ "-" +last_day
583 588
           this.end_date = this.getTime(last_day)
584 589
           console.log('this.end_date',this.end_date);
585
-          // return this.end_date;  
586
-      }, 
590
+          // return this.end_date;
591
+      },
587 592
       // 日期格式化
588 593
       timeFormat(date) {
589 594
           if (!date || typeof(date) === "string") {
@@ -606,11 +611,11 @@ import html2canvas from "html2canvas"
606 611
       },
607 612
       handleCurrentChange(val){
608 613
         this.currentPage = val
609
-        this.getdetail()
614
+        this.getdetail(this.status_value)
610 615
       },
611 616
       handleSizeChange(val){
612 617
         this.limit = val
613
-        this.getdetail()
618
+        this.getdetail(this.status_value)
614 619
       },
615 620
        // 转换时间
616 621
       getTime(val) {
@@ -656,7 +661,7 @@ import html2canvas from "html2canvas"
656 661
               yearBirth = userCard.substring(6,10);
657 662
               monthBirth = userCard.substring(10,12);
658 663
               dayBirth = userCard.substring(12,14);
659
-              
664
+
660 665
             }
661 666
             //获取当前年月日并计算年龄
662 667
             var myDate = new Date();
@@ -671,7 +676,7 @@ import html2canvas from "html2canvas"
671 676
         } else {
672 677
           return ''
673 678
         }
674
-        
679
+
675 680
       },
676 681
       // 护士
677 682
       getAllNurseList(){
@@ -692,7 +697,7 @@ import html2canvas from "html2canvas"
692 697
               this.docList = list
693 698
               this.operators = response.data.data.operators
694 699
           }
695
-        })  
700
+        })
696 701
       },
697 702
       getnurse(ids){
698 703
         const nurse = this.nurseList
@@ -721,4 +726,4 @@ import html2canvas from "html2canvas"
721 726
     },
722 727
 
723 728
   }
724
-</script>
729
+</script>

+ 31 - 26
src/xt_pages/Dialysisanalysis/new_otherIndicators/components/dialyzer.vue View File

@@ -267,11 +267,14 @@ import html2canvas from "html2canvas"
267 267
           end_date:this.end_date,
268 268
         }
269 269
         Getdialyzer(params).then(response =>{
270
+          console.log('ressponse',response.data.data);
270 271
           if(response.data.state ==1){
272
+            console.log('bbbbbbbbb',response.data.data);
271 273
             const list = response.data.data.data
272 274
             const xAxis =[]
273 275
             const yAxis = []
274 276
             list.forEach(item =>{
277
+              
275 278
               xAxis.push(item.name)
276 279
               yAxis.push(item.count)
277 280
             })
@@ -336,7 +339,7 @@ import html2canvas from "html2canvas"
336 339
               this.Getdialyzerdetail(params.name)
337 340
             })
338 341
           }
339
-          console.log('ressponse',response.data.data);
342
+          
340 343
         })
341 344
        
342 345
       },
@@ -369,7 +372,7 @@ import html2canvas from "html2canvas"
369 372
       },
370 373
       // 详情查询
371 374
       deil_click(){
372
-        this.Getdialyzerdetail()
375
+        this.Getdialyzerdetail(this.getdialyze(this.dialyze_value))
373 376
       },
374 377
        // 下载 
375 378
       Download_click(){
@@ -451,7 +454,8 @@ import html2canvas from "html2canvas"
451 454
           this.start_date = this.getFirstDayOfMonth(new Date())
452 455
           this.end_date = this.getTime(new Date())
453 456
         }else if(eve ==5){
454
-          this.gettopMonth()
457
+          this.getLastMonthFirstDay()
458
+          this.getLastMonthLastDay()
455 459
         }else if(eve == 6){
456 460
           this.start_date = this.getFirstDayOfYear(new Date())
457 461
           this.end_date = this.getTime(new Date())
@@ -464,7 +468,7 @@ import html2canvas from "html2canvas"
464 468
       // 详情数据源
465 469
       Getdialyzerdetail(name){
466 470
         const params={
467
-          dialyzer:name||this.getdialyze(this.dialyze_value),
471
+          dialyzer:name,
468 472
           start_date:this.start_date,
469 473
           end_date:this.end_date,
470 474
           page:this.currentPage,
@@ -520,26 +524,27 @@ import html2canvas from "html2canvas"
520 524
         date.setDate(1);
521 525
         return this.timeFormat(date);
522 526
       },
523
-      // 上个月
524
-      gettopMonth(){
525
-        var currentDate = new Date();
526
-        var month=currentDate.getMonth()+(-1);
527
-        if(month<0){
528
-          var n = parseInt((-month)/12);
529
-          month += n*12;
530
-          currentDate.setFullYear(currentDate.getFullYear()-n);
531
-        }
532
-        currentDate = new Date(currentDate.setMonth(month));
533
-        //获得当前月份0-11  
534
-        var currentMonth = currentDate.getMonth(); 
535
-        //获得当前年份4位年  
536
-        var currentYear = currentDate.getFullYear(); 
537
-        //获得上一个月的第一天  
538
-        this.start_date = this.getTime(new Date(currentYear, currentMonth-1,1)); 
539
-        //获得上一月的最后一天  
540
-        this.end_date = this.getTime(new Date(currentYear, currentMonth, 0));
541
-       console.log('11111',this.start_date);
542
-       console.log('22222',this.end_date);
527
+       //上个月第一天
528
+      getLastMonthFirstDay() {
529
+          var date = new Date();
530
+          date.setDate(0);
531
+          var y = date.getFullYear(); //获取年份
532
+          var m = date.getMonth() + 1; //获取月份
533
+          m = m < 10 ? "0" + m : m;
534
+          this.start_date = [y, m, '01'].join("-")
535
+          // return [y, m, '01'].join("-");
536
+      },
537
+      // 上个月最后一天
538
+      getLastMonthLastDay() {
539
+          var date = new Date();
540
+          date.setDate(0);
541
+          var y = date.getFullYear(); //获取年份
542
+          var m = date.getMonth() + 1; //获取月份
543
+          var d = new Date(y, m, 0).getDate(); //获取当月最后一日
544
+          m = m < 10 ? "0" + m : m; //月份补 0
545
+          d = d < 10 ? "0" + d : d; //日数补 0
546
+          this.end_date = [y, m, d].join("-")
547
+          // return [y, m, d].join("-");
543 548
       },
544 549
       // 本年
545 550
       getFirstDayOfYear (date) {
@@ -592,11 +597,11 @@ import html2canvas from "html2canvas"
592 597
       },
593 598
       handleCurrentChange(val){
594 599
         this.currentPage = val
595
-        this.Getdialyzerdetail()
600
+        this.Getdialyzerdetail(this.getdialyze(this.dialyze_value))
596 601
       },
597 602
       handleSizeChange(val){
598 603
         this.limit = val
599
-        this.Getdialyzerdetail()
604
+        this.Getdialyzerdetail(this.getdialyze(this.dialyze_value))
600 605
       },
601 606
       // 透析模式
602 607
       getmode(ids){

+ 4 - 4
src/xt_pages/Dialysisanalysis/new_otherIndicators/index.vue View File

@@ -8,7 +8,7 @@
8 8
       <div class="page_patientControlAnalysis">
9 9
         <div class="photos">
10 10
           <div v-for="(item,index) in indicators" :key="index"  @click="echart_click(item)"
11
-            style="width: 280px;height: 300px;border:1px solid gainsboro;border-radius: 8px;margin: 0 0 30px 28px"
11
+            style="width: 280px;height: 235px;border:1px solid gainsboro;border-radius: 8px;margin: 0 0 30px 28px"
12 12
           >
13 13
             <!-- <div v-if="" class="background date_type1" style="background-repeat: no-repeat;"></div>
14 14
             <div v-if="item.check_type == 1" class="background date_type2" style="background-repeat: no-repeat;"></div>
@@ -18,9 +18,9 @@
18 18
             <!-- <div v-if="item.check_type == 1" class="background date_type2" style="background-repeat: no-repeat;"></div>
19 19
             <div v-if="item.check_type == 2" class="background date_type3" style="background-repeat: no-repeat;"></div> -->
20 20
             <!-- <div v-if="item.check_type == 1" class="background date_type1" style="background-repeat: no-repeat;"></div> -->
21
-            
22
-            <p class="title">{{item.item_name}}</p>
23
-           
21
+
22
+            <p class="title" style="text-align: center;">{{item.item_name}}</p>
23
+
24 24
           </div>
25 25
         </div>
26 26
       </div>

+ 7 - 4
src/xt_pages/workforce/components/tableData.vue View File

@@ -1405,6 +1405,9 @@ export default {
1405 1405
       if(columnIndex==1&&row.zone_type!=1){
1406 1406
         return "table-row-new-class schedule-table-row Infectious_disease";
1407 1407
       }
1408
+      if(columnIndex!=1&&row.zone_type!=1&&columnIndex!=23&&columnIndex!=0){
1409
+        return 'backPurple'
1410
+      }
1408 1411
       // 机号蓝线
1409 1412
       // if(columnIndex==1 ){
1410 1413
       //   return 'border_bott '
@@ -1460,12 +1463,12 @@ export default {
1460 1463
       // return 'border-bottom: 1px solid #707174;'
1461 1464
 
1462 1465
       // console.log('555555',this.subzone);
1463
-      if(this.org_id!=10503 && this.org_id!=10447 && this.org_id!=0 && this.org_id !=10471){
1466
+      if(this.org_id!=10503 && this.org_id!=10447 && this.org_id!=0 && this.org_id !=10471 ){
1464 1467
         return 'border: 1px solid #707174;border-collapse: collapse;'
1465 1468
       }
1466
-      if(columnIndex!=1&&row.zone_type!=1&&columnIndex!=23&&columnIndex!=0){
1467
-        return 'color:red'
1468
-      }
1469
+      // if(columnIndex!=1&&row.zone_type!=1&&columnIndex!=23&&columnIndex!=0){
1470
+      //   return 'color:red'
1471
+      // }
1469 1472
       
1470 1473
       // 分区蓝线
1471 1474
       // for(let i=0;i<this.subzone.length;i++){