|
@@ -63,7 +63,11 @@
|
63
|
63
|
<div>
|
64
|
64
|
<el-table :data="tableData" border style="width: 100%" :row-style="{ color: '#303133' }" :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}">
|
65
|
65
|
<el-table-column fixed prop="name" label="姓名" width="120"></el-table-column>
|
66
|
|
- <el-table-column prop="dialysis_no" label="透析号" width="150"></el-table-column>
|
|
66
|
+ <el-table-column label="透析号" width="150">
|
|
67
|
+ <template slot-scope="scope">
|
|
68
|
+ {{getDialysisNo(scope.row.name)}}
|
|
69
|
+ </template>
|
|
70
|
+ </el-table-column>
|
67
|
71
|
<el-table-column
|
68
|
72
|
:label="modeItem.item_name"
|
69
|
73
|
property="number"
|
|
@@ -72,8 +76,8 @@
|
72
|
76
|
v-for="(modeItem, index) in normData"
|
73
|
77
|
:key="index"
|
74
|
78
|
>
|
75
|
|
- <template slot-scope="scope">
|
76
|
|
- {{ scope.row.data[index].Count}}
|
|
79
|
+ <template slot-scope="scope">
|
|
80
|
+
|
77
|
81
|
</template>
|
78
|
82
|
</el-table-column>
|
79
|
83
|
<el-table-column fixed="right" label="操作" width="100">
|
|
@@ -118,7 +122,7 @@ export default {
|
118
|
122
|
let threeMonths = new Date(new Date().setFullYear(new Date().getFullYear()-1)).getTime() - 24 * 3600 * 1000;
|
119
|
123
|
return time.getTime() > Date.now() || time.getTime() < threeMonths;;
|
120
|
124
|
}
|
121
|
|
- },
|
|
125
|
+ },
|
122
|
126
|
crumbs: [
|
123
|
127
|
{ path: false, name: "科室质控" },
|
124
|
128
|
{ path: false, name: "患者质控达标统计" }
|
|
@@ -221,15 +225,18 @@ export default {
|
221
|
225
|
tableName:[],
|
222
|
226
|
total:0,
|
223
|
227
|
ObjectData:{},
|
|
228
|
+ tablePatients:[],
|
|
229
|
+ tableSort:[],
|
224
|
230
|
};
|
225
|
231
|
},
|
226
|
232
|
methods: {
|
227
|
233
|
handleSizeChange(limit){
|
228
|
|
- this.listQuery.limit = limit
|
229
|
|
- this.getlist()
|
|
234
|
+ this.listQuery.limit = limit
|
|
235
|
+ this.getlist()
|
230
|
236
|
},
|
231
|
237
|
handleCurrentChange(page){
|
232
|
238
|
this.listQuery.page = page
|
|
239
|
+
|
233
|
240
|
this.getlist()
|
234
|
241
|
},
|
235
|
242
|
changeTime() {
|
|
@@ -238,9 +245,9 @@ export default {
|
238
|
245
|
this.$message.error("结束时间不能小于开始时间");
|
239
|
246
|
this.listQuery.start_time = "";
|
240
|
247
|
} else {
|
241
|
|
-
|
|
248
|
+
|
242
|
249
|
}
|
243
|
|
-
|
|
250
|
+
|
244
|
251
|
},
|
245
|
252
|
changeEndTime(val) {
|
246
|
253
|
var time =
|
|
@@ -256,27 +263,33 @@ export default {
|
256
|
263
|
return new Date(time).getTime() / 1000;
|
257
|
264
|
},
|
258
|
265
|
handleClick(row) {
|
259
|
|
- console.log(row);
|
260
|
266
|
this.$router.push({ path: "/qcd/patientComplianceDetails" });
|
261
|
267
|
},
|
|
268
|
+ getDialysisNo(name){
|
|
269
|
+ for(let i=0;i<this.tablePatients.length;i++){
|
|
270
|
+ if(name == this.tablePatients[i].name){
|
|
271
|
+ return this.tablePatients[i].dialysis_no
|
|
272
|
+ }
|
|
273
|
+ }
|
|
274
|
+ },
|
262
|
275
|
getNormData(){
|
263
|
276
|
getNormData().then(response=>{
|
264
|
277
|
if(response.data.state == 1){
|
265
|
278
|
var normdata = response.data.data.normdata
|
266
|
|
- console.log("normdata",normdata)
|
267
|
|
-
|
|
279
|
+ // console.log("normdata",normdata)
|
|
280
|
+ this.normData = normdata
|
268
|
281
|
var a=[];
|
269
|
282
|
for(let i=0;i<normdata.length;i++){
|
270
|
283
|
a.push(normdata[i])
|
271
|
284
|
}
|
272
|
|
- console.log("a",a)
|
|
285
|
+ // console.log("a",a)
|
273
|
286
|
this.newArr = a
|
274
|
287
|
var arr = this.arrayToObj(a)
|
275
|
|
-
|
276
|
|
- console.log("娃哈哈",arr)
|
|
288
|
+
|
|
289
|
+ // console.log("娃哈哈",arr)
|
277
|
290
|
this.ObjectData = arr
|
278
|
291
|
|
279
|
|
- this.normData = normdata
|
|
292
|
+
|
280
|
293
|
}
|
281
|
294
|
})
|
282
|
295
|
},
|
|
@@ -286,25 +299,25 @@ export default {
|
286
|
299
|
getPatientsControl(this.lapstor,this.listQuery.start_time,this.listQuery.end_time,this.listQuery.page,this.listQuery.limit).then(response=>{
|
287
|
300
|
if(response.data.state == 1){
|
288
|
301
|
var patients = response.data.data.patients
|
289
|
|
- console.log("paitents",patients)
|
290
|
|
- // this.tableData = patients;
|
|
302
|
+ // console.log("paitents",patients)
|
|
303
|
+ this.tablePatients = patients
|
291
|
304
|
var total = response.data.data.total
|
292
|
|
- console.log("total",total)
|
|
305
|
+ // console.log("total",total)
|
293
|
306
|
this.total = total
|
294
|
307
|
var control = response.data.data.control
|
295
|
|
- console.log("control",control)
|
296
|
|
-
|
297
|
|
- var arr = []
|
298
|
|
- for(let i=0;i<control.length;i++){
|
299
|
|
- for(let j=0;j<this.normData.length;j++){
|
300
|
|
- if(control[i].item_id == this.normData[j].inspection_minor){
|
301
|
|
- arr.push(control[i])
|
302
|
|
- }
|
303
|
|
- }
|
304
|
|
- }
|
305
|
|
- console.log("arr",arr)
|
|
308
|
+ // console.log("control",control)
|
|
309
|
+ var newArr = []
|
|
310
|
+ //分页
|
|
311
|
+ for(let i=0;i<control.length;i++){
|
|
312
|
+ for(let j=0;j<patients.length;j++){
|
|
313
|
+ if(control[i].patient_id == patients[j].patient_id){
|
|
314
|
+ newArr.push(control[i])
|
|
315
|
+ }
|
|
316
|
+ }
|
|
317
|
+ }
|
|
318
|
+ // console.log("newArr",newArr)
|
306
|
319
|
let dataInfo = {}
|
307
|
|
- arr.forEach((item, index) => {
|
|
320
|
+ newArr.forEach((item, index) => {
|
308
|
321
|
let { patient_id } = item
|
309
|
322
|
if (!dataInfo[patient_id]) {
|
310
|
323
|
dataInfo[patient_id] = {
|
|
@@ -312,72 +325,121 @@ export default {
|
312
|
325
|
name:item.name,
|
313
|
326
|
child: [],
|
314
|
327
|
inspect_date:item.inspect_date
|
|
328
|
+
|
315
|
329
|
}
|
316
|
330
|
}
|
317
|
331
|
})
|
318
|
|
- console.log("arr",arr)
|
319
|
|
- let list = Object.values(dataInfo)
|
|
332
|
+
|
|
333
|
+ let list = Object.values(dataInfo)
|
320
|
334
|
list.map(item => {
|
321
|
|
- for (let i = 0; i < arr.length; i++) {
|
322
|
|
- if (item.inspect_date == arr[i].inspect_date && item.patient_id == arr[i].patient_id) {
|
323
|
|
- item.child.push(arr[i])
|
|
335
|
+ for (let i = 0; i < newArr.length; i++) {
|
|
336
|
+ if (item.inspect_date == newArr[i].inspect_date && item.patient_id == newArr[i].patient_id) {
|
|
337
|
+ item.child.push(newArr[i])
|
324
|
338
|
}
|
325
|
339
|
}
|
326
|
340
|
})
|
327
|
|
- console.log("list",list)
|
328
|
|
- var arrtwo = []
|
329
|
|
- list.map(item =>{
|
330
|
|
- item.child.map(item=>{
|
331
|
|
- arrtwo.push(item)
|
332
|
|
- })
|
333
|
|
- })
|
|
341
|
+ //console.log("list",list)
|
334
|
342
|
|
335
|
|
- console.log("arrtwo",arrtwo)
|
|
343
|
+ var newarrtwo = []
|
|
344
|
+ list.map(item=>{
|
|
345
|
+ item.child.map(it=>{
|
|
346
|
+ newarrtwo.push(it)
|
|
347
|
+ })
|
|
348
|
+ })
|
|
349
|
+ // console.log("多少条",newarrtwo)
|
336
|
350
|
|
337
|
|
- var dd = {};
|
338
|
|
- for (const index in arrtwo) {
|
339
|
|
- if (!(arrtwo[index].name in dd)) {
|
340
|
|
- dd[arrtwo[index].name] = {};
|
341
|
|
- }
|
342
|
|
- if (!(arrtwo[index].item_name in dd[arrtwo[index].name]) && arrtwo[index].item_name != 0) {
|
343
|
|
- dd[arrtwo[index].name][arrtwo[index].item_name] = arrtwo[index];
|
|
351
|
+ //配置的才显示
|
344
|
352
|
|
|
353
|
+ var arrthree = []
|
|
354
|
+ for(let i=0;i<newarrtwo.length;i++){
|
|
355
|
+ for(let j=0;j<this.normData.length;j++){
|
|
356
|
+ if(newarrtwo[i].item_id == this.normData[j].inspection_minor){
|
|
357
|
+ arrthree.push(newarrtwo[i])
|
|
358
|
+ }
|
|
359
|
+ }
|
|
360
|
+ }
|
|
361
|
+ // console.log("arrthree",arrthree)
|
|
362
|
+
|
|
363
|
+ var arrfour = this.arrayDate(arrthree,newarrtwo)
|
|
364
|
+ // console.log("arrfour",arrfour)
|
|
365
|
+ arrfour.map(item=>{
|
|
366
|
+ item.item_name = ""
|
|
367
|
+ arrthree.push(item)
|
|
368
|
+ })
|
|
369
|
+
|
|
370
|
+ var dd = {};
|
|
371
|
+ for (const index in arrthree) {
|
|
372
|
+ if (!(arrthree[index].name in dd)) {
|
|
373
|
+ dd[arrthree[index].name] = {};
|
|
374
|
+ }
|
|
375
|
+ if (!(arrthree[index].item_name in dd[arrthree[index].name]) && arrthree[index].item_name != 0) {
|
|
376
|
+ dd[arrthree[index].name][arrthree[index].item_name] = arrthree[index];
|
345
|
377
|
}
|
346
|
378
|
}
|
347
|
|
- console.log("ddd",dd)
|
348
|
|
- console.log("obj",this.ObjectData)
|
|
379
|
+ console.log("ddd",dd)
|
|
380
|
+ console.log("obj",this.ObjectData)
|
|
381
|
+ this.tableData= []
|
|
382
|
+
|
349
|
383
|
for(const key in dd){
|
350
|
384
|
for(const mkey in this.ObjectData){
|
351
|
|
- if (!(this.ObjectData[mkey].item_name in dd[key])) {
|
352
|
|
- dd[key][this.ObjectData[mkey].item_name] = {
|
353
|
|
- ItemName: this.ObjectData[mkey].item_name,
|
354
|
|
- name: mkey,
|
355
|
|
- Count: 0
|
|
385
|
+ if (!(this.ObjectData[mkey].item_name in dd[key])) {
|
|
386
|
+ dd[key][this.ObjectData[mkey].item_name] = {
|
|
387
|
+ ItemName: this.ObjectData[mkey].item_name,
|
|
388
|
+ name: mkey,
|
|
389
|
+ inspect_value:0
|
356
|
390
|
};
|
357
|
391
|
}
|
358
|
392
|
}
|
359
|
393
|
this.tableData.push({ name: key, data: dd[key]});
|
360
|
|
- }
|
361
|
|
- console.log("表",this.tableData)
|
362
|
|
- let projectArr = []
|
|
394
|
+ }
|
|
395
|
+
|
|
396
|
+
|
|
397
|
+ let projectArr = []
|
363
|
398
|
this.newArr.map(item => {
|
364
|
399
|
projectArr.push(item.item_name)
|
365
|
400
|
})
|
|
401
|
+ console.log("projectArr",projectArr)
|
|
402
|
+
|
366
|
403
|
this.tableData.map(item => {
|
367
|
404
|
// console.log("item---",item.data)
|
368
|
|
- let arr = Object.values(item.data);
|
369
|
|
-
|
370
|
|
- arr.sort((a,b)=>{
|
371
|
|
- return projectArr.indexOf(a.item_name)-projectArr.indexOf(b.item_name);
|
|
405
|
+ let newarr = Object.values(item.data);
|
|
406
|
+ //console.log("arr",arr)
|
|
407
|
+ newarr.sort((a,b)=>{
|
|
408
|
+ return projectArr.indexOf(a.ItemName)-projectArr.indexOf(b.ItemName);
|
372
|
409
|
});
|
373
|
|
- item.data = arr
|
374
|
|
- })
|
|
410
|
+ item.data = newarr
|
|
411
|
+ })
|
|
412
|
+ console.log("表",this.tableData)
|
375
|
413
|
}
|
376
|
414
|
})
|
377
|
415
|
},
|
378
|
416
|
arrayToObj(arr){
|
379
|
417
|
return Object.assign({},arr);
|
380
|
|
- }
|
|
418
|
+ },
|
|
419
|
+
|
|
420
|
+ arrayDate(array1,array2){
|
|
421
|
+ var array1 = array1;
|
|
422
|
+ var array2 = array2;
|
|
423
|
+ var result = [];
|
|
424
|
+ for(var i = 0; i < array2.length; i++){
|
|
425
|
+ var obj = array2[i];
|
|
426
|
+ var num = obj.patient_id; //staff_id 就是要对比的key
|
|
427
|
+ var isExist = false;
|
|
428
|
+ for(var j = 0; j < array1.length; j++){
|
|
429
|
+ var aj = array1[j];
|
|
430
|
+ var n = aj.patient_id;
|
|
431
|
+ if(n == num){
|
|
432
|
+ isExist = true;
|
|
433
|
+ break;
|
|
434
|
+ }
|
|
435
|
+ }
|
|
436
|
+ if(!isExist){
|
|
437
|
+ result.push(obj);
|
|
438
|
+ }
|
|
439
|
+ }
|
|
440
|
+ console.log("result",result)
|
|
441
|
+ return result;
|
|
442
|
+ },
|
381
|
443
|
},
|
382
|
444
|
created(){
|
383
|
445
|
var nowDate = new Date();
|
|
@@ -400,7 +462,7 @@ export default {
|
400
|
462
|
(nowMonth < 10 ? "0" + nowMonth : nowMonth) +
|
401
|
463
|
"-" +
|
402
|
464
|
(nowDay < 10 ? "0" + nowDay : nowDay);
|
403
|
|
-
|
|
465
|
+
|
404
|
466
|
//获取系统指标
|
405
|
467
|
this.getNormData()
|
406
|
468
|
//获取列表数据
|