Browse Source

诊疗档案(失眠评估)

newMaster
liuzhipeng 4 months ago
parent
commit
967bf02348
  1. 141
      acupuncture-前台/src/views/indexCom/JM.vue
  2. 64
      acupuncture-前台/src/views/indexCom/index.js

141
acupuncture-前台/src/views/indexCom/JM.vue

@ -17,8 +17,7 @@
<el-card shadow="always"> <el-card shadow="always">
<div class="dis title-box"> <div class="dis title-box">
<span class="header-title">体系分布</span> <span class="header-title">体系分布</span>
<div class="dis"> <div class="dis"></div>
</div>
</div> </div>
<div style="height: 300px" v-loading="loading"> <div style="height: 300px" v-loading="loading">
<div id="system" style="width: 100%"></div> <div id="system" style="width: 100%"></div>
@ -44,8 +43,7 @@
<el-card shadow="always"> <el-card shadow="always">
<div class="dis title-box"> <div class="dis title-box">
<span class="header-title">体态评估TAPS</span> <span class="header-title">体态评估TAPS</span>
<div class="dis"> <div class="dis"></div>
</div>
</div> </div>
<div style="height: 300px" v-loading="loading"> <div style="height: 300px" v-loading="loading">
<div id="posture" style="width: 100%"></div> <div id="posture" style="width: 100%"></div>
@ -71,8 +69,7 @@
<el-card shadow="always"> <el-card shadow="always">
<div class="dis title-box"> <div class="dis title-box">
<span class="header-title">焦虑HAMD-24</span> <span class="header-title">焦虑HAMD-24</span>
<div class="dis"> <div class="dis"></div>
</div>
</div> </div>
<div style="height: 300px" v-loading="loading"> <div style="height: 300px" v-loading="loading">
<div id="anxiety" style="width: 100%"></div> <div id="anxiety" style="width: 100%"></div>
@ -88,14 +85,13 @@
import * as echarts from "echarts"; import * as echarts from "echarts";
require("echarts/theme/macarons"); // echarts theme require("echarts/theme/macarons"); // echarts theme
import resize from "@/views/dashboard/mixins/resize"; import resize from "@/views/dashboard/mixins/resize";
import { import { zlInfo } from "@/api/indexCom.js";
zlInfo
} from "@/api/indexCom.js";
import { import {
diagnoseEcharts, diagnoseEcharts,
systemEcharts, systemEcharts,
physiqueEcharts, physiqueEcharts,
postureEcharts postureEcharts,
agrypniaEcharts,
} from "./index"; } from "./index";
export default { export default {
name: "Post", name: "Post",
@ -109,35 +105,37 @@
endTime: "", endTime: "",
}, },
}, },
loading: false, loading: false,
diagnoseValue: null, // diagnoseValue: null, //
systemValue: null, // systemValue: null, //
physiqueValue: null, // physiqueValue: null, //
postureValue: null, // postureValue: null, //
agrypniaValue: null, //
// //
systemObj: { systemObj: {
"yxfpz": "隐形肥胖型", // yxfpz: "隐形肥胖型", //
"zfgdx": "脂肪过多型", // zfgdx: "脂肪过多型", //
"fpx": "肥胖型", // fpx: "肥胖型", //
"jrbzx": "肌肉不足型", // jrbzx: "肌肉不足型", //
"jkjcx": "健康匀称型", // jkjcx: "健康匀称型", //
"czjrx": "超重肌肉型", // czjrx: "超重肌肉型", //
"xsx": "消瘦型", // xsx: "消瘦型", //
"dzfx": "低脂肪型", // dzfx: "低脂肪型", //
"ydyx": "运动员型", // ydyx: "运动员型", //
}, },
// //
physiqueObj: { physiqueObj: {
"phz": "平和质", // phz: "平和质", //
"qxz": "气虚质", // qxz: "气虚质", //
"yangxz": "阳虚质", // yangxz: "阳虚质", //
"yinxz": "阴虚质", // yinxz: "阴虚质", //
"tsz": "痰湿质", //湿 tsz: "痰湿质", //湿
"srz": "湿热质", //湿 srz: "湿热质", //湿
"xyz": "血瘀质", // xyz: "血瘀质", //
"qyz": "气郁质", // qyz: "气郁质", //
"tlz": "特禀质", // tlz: "特禀质", //
}, },
}; };
}, },
@ -155,57 +153,62 @@
async getData() { async getData() {
try { try {
await zlInfo(this.queryParams).then((res) => { await zlInfo(this.queryParams).then((res) => {
const { const { jlfb, smfb, sort, ttfb, txfb, zytz } = res.data;
jlfb,
smfb,
sort,
ttfb,
txfb,
zytz
} = res.data
// //
this.diagnoseValue = sort.sort((a, b) => a.total - b.total) this.diagnoseValue = sort.sort((a, b) => a.total - b.total);
this.handleDiagnose() this.handleDiagnose();
// //
this.systemValue = [] this.systemValue = [];
delete txfb.total delete txfb.total;
for (let key in txfb) { for (let key in txfb) {
let data = { let data = {
name: this.systemObj[key], name: this.systemObj[key],
value: txfb[key] value: txfb[key],
} };
this.systemValue.push(data) this.systemValue.push(data);
} }
this.handleSystem() this.handleSystem();
// //
this.physiqueValue = [] this.physiqueValue = [];
delete zytz.total delete zytz.total;
for (let key in zytz) { for (let key in zytz) {
let data = { let data = {
name: this.physiqueObj[key], name: this.physiqueObj[key],
value: zytz[key], value: zytz[key],
};
this.physiqueValue.push(data);
} }
this.physiqueValue.push(data) this.handlePhysique();
}
this.handlePhysique()
// //
this.postureValue = [{ this.postureValue = [
{
value: ttfb.score1, value: ttfb.score1,
name: "1分" name: "1分",
},{ },
{
value: ttfb.score2, value: ttfb.score2,
name: "2分" name: "2分",
},{ },
{
value: ttfb.score3, value: ttfb.score3,
name: "3分" name: "3分",
},{ },
{
value: ttfb.score4, value: ttfb.score4,
name: "4分" name: "4分",
},{ },
{
value: ttfb.score5, value: ttfb.score5,
name: "5分" name: "5分",
}] },
this.handlePosture() ];
this.handlePosture();
// PHQ-9
this.agrypniaValue = [];
for (let key in smfb) {
this.agrypniaValue.push(smfb[key]);
}
this.handleAgrypnia();
}); });
this.loading = false; this.loading = false;
} catch (e) {} } catch (e) {}
@ -263,7 +266,7 @@
}, },
// //
handlePosture() { handlePosture() {
postureEcharts.series[0].data = this.postureValue postureEcharts.series[0].data = this.postureValue;
this.$nextTick(() => { this.$nextTick(() => {
var myChart = echarts.init(document.getElementById("posture"), null, { var myChart = echarts.init(document.getElementById("posture"), null, {
height: 300, height: 300,
@ -282,6 +285,20 @@
endTime: _data[1] + " " + "23:59:59", endTime: _data[1] + " " + "23:59:59",
}; };
}, },
//
handleAgrypnia() {
console.log("this.agrypniaValue", this.agrypniaValue);
agrypniaEcharts.series[0].data = this.agrypniaValue;
this.$nextTick(() => {
var myChart = echarts.init(document.getElementById("agrypnia"), null, {
height: 300,
});
myChart.setOption(agrypniaEcharts, true);
myChart.resize();
window.onresize = myChart.resize;
});
},
// //
getRenew() { getRenew() {
this.Linepatient(); this.Linepatient();

64
acupuncture-前台/src/views/indexCom/index.js

@ -445,6 +445,70 @@ export const postureEcharts = {
}, },
], ],
}; };
// 失眠
export const agrypniaEcharts = {
tooltip: {
trigger: "axis",
axisPointer: {
type: "cross",
label: {
backgroundColor: "#6a7985",
},
},
formatter: function (params) {
let res1 = params[0].name;
for (var i = 0, l = params.length; i < l; i++) {
res1 +=
"<br/>" +
`<span style="background:${params[i].color};width:12px;display:inline-block;height:12px;border-radius:50%;margin-right:5px;"></span>` +
params[i].seriesName +
" : " +
params[i].value +
"个";
}
return res1;
},
},
xAxis: {
type: "category",
data: ['0~4分', '5~9分', '10~14分','15~19分','20~27分'],
},
grid: {
top: "12%",
left: "5%",
right: "2%",
bottom: "0%",
containLabel: true,
},
yAxis: {
name: "数量( 个 )",
type: "value",
minInterval: 1,
splitLine: {
show: true,
lineStyle: {
type: "dashed",
},
},
},
series: [
{
name: "数量:",
data: [],
type: "bar",
barMaxWidth: 24, //柱图宽度
color: "#4f8bff",
itemStyle: {
normal: {
//这里设置柱形图圆角 [左上角,右上角,右下角,左下角]
barBorderRadius: [50, 50, 0, 0],
},
},
},
],
};
// 患者信息 - 数据分析 // 患者信息 - 数据分析
export const HZXXSJFX = { export const HZXXSJFX = {
tooltip: { tooltip: {

Loading…
Cancel
Save