diff --git a/public/index.html b/public/index.html
index 7daca5d..2c3beee 100644
--- a/public/index.html
+++ b/public/index.html
@@ -1,30 +1,31 @@
-
-
-
-
-
- 绿道质控
-
-
-
-
+
+
+
+
+
+ 绿道质控
+
+
+
+
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/App.vue b/src/App.vue
index bbfd752..ba6cd40 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -145,7 +145,7 @@
firstAidId
} = this.patientData;
if (!firstAidId) return;
- // this.queryMessage();
+ this.queryMessage();
await this.handMessageQuery();
this.request = 0;
diff --git a/src/api/index.js b/src/api/index.js
index 0402ed5..2d2433b 100644
--- a/src/api/index.js
+++ b/src/api/index.js
@@ -307,6 +307,31 @@ export const queryPatient = (params) =>
axios.post(`${proxyUrl1}/home/queryPatient`, {
...params
});
+
+export const queryDitResult = (params) =>
+ axios.post(`${proxyUrl1}/home/queryDitResult`, {
+ ...params
+ });
+export const queryOntResult = (params) =>
+ axios.post(`${proxyUrl1}/home/queryOntResult`, {
+ ...params
+ });
+export const queryOptResult = (params) =>
+ axios.post(`${proxyUrl1}/home/queryOptResult`, {
+ ...params
+ });
+export const queryXgzlBfzResult = (params) =>
+ axios.post(`${proxyUrl1}/home/queryXgzlBfzResult`, {
+ ...params
+ });
+export const queryXgzlLv = (params) =>
+ axios.post(`${proxyUrl1}/home/queryXgzlLv`, {
+ ...params
+ });
+
+
+
+
// 介入手术记录/总报告/DNT时间表
export const operationLog = (params) =>
axios.post(`${proxyUrl1}/interfere/operationLog`, {
@@ -331,4 +356,20 @@ export const createPatient = (params) =>
export const exportRsPdf = (params) =>
axios.post(`${proxyUrl1}/admin/export/exportRsPdf`, {
...params
+ });
+export const exportDntPdf = (params) =>
+ axios.post(`${proxyUrl1}/admin/export/exportDntPdf`, {
+ ...params
+ });
+export const exportRsgcbPdf = (params) =>
+ axios.post(`${proxyUrl1}/admin/export/exportRsgcbPdf`, {
+ ...params
+ });
+export const exportAll = (params) =>
+ axios.post(`${proxyUrl1}/admin/export/exportAll`, {
+ ...params
+ });
+export const exportJrPdf = (params) =>
+ axios.post(`${proxyUrl1}/admin/export/exportJrPdf`, {
+ ...params
});
\ No newline at end of file
diff --git a/src/assets/less/common.less b/src/assets/less/common.less
index f55903d..29bd672 100644
--- a/src/assets/less/common.less
+++ b/src/assets/less/common.less
@@ -124,6 +124,16 @@
margin-bottom: 12px;
border-radius: 20px;
}
+
+.throm-common-button {
+ width: 60% !important;
+ margin: 0 auto;
+ // margin-bottom: 12px;
+ border-radius: 20px;
+ .ant-btn {
+ margin-top: 12px;
+ }
+}
.common-slider{
width: 100%;
display: flex;
diff --git a/src/layouts/BasicLayout.less b/src/layouts/BasicLayout.less
index d762cea..30264a1 100644
--- a/src/layouts/BasicLayout.less
+++ b/src/layouts/BasicLayout.less
@@ -130,6 +130,10 @@
.action{
padding: 0 .2rem;
font-weight: bold;
+ color: red;
+ display: flex;
+ flex-direction: column;
+ align-items: center;
}
}
@@ -149,8 +153,8 @@
position: relative;
.global-layout-content{
- height: calc(100vh - 66px);
- // overflow-y: auto;
+ height: calc(100vh - 56px);
+ overflow-y: hidden;
padding: 10px;
position: relative;
}
diff --git a/src/layouts/BasicLayout.vue b/src/layouts/BasicLayout.vue
index 24a55aa..1107216 100644
--- a/src/layouts/BasicLayout.vue
+++ b/src/layouts/BasicLayout.vue
@@ -48,7 +48,7 @@
)
@@ -59,13 +59,16 @@
-
- 退出急救
-
-
diff --git a/src/views/Patient/components/patient-detail.vue b/src/views/Patient/components/patient-detail.vue
index 3bfb993..61cb38f 100644
--- a/src/views/Patient/components/patient-detail.vue
+++ b/src/views/Patient/components/patient-detail.vue
@@ -236,7 +236,7 @@
msg
} = res;
if (code === 200) {
-
+
this.home.queryAid(data.firstAidId, false);
// this.setPatientData({ ...this.patientDataCur, firstAidId: data.firstAidId })
this.authEdit = false
@@ -410,6 +410,8 @@
+
+
\ No newline at end of file
diff --git a/src/views/document/components/inspect.vue b/src/views/document/components/inspect.vue
index 66293e3..fd4255d 100644
--- a/src/views/document/components/inspect.vue
+++ b/src/views/document/components/inspect.vue
@@ -108,7 +108,7 @@
+
+
\ No newline at end of file
diff --git a/src/views/statistics/index.vue b/src/views/statistics/index.vue
index 34afe81..7c10801 100644
--- a/src/views/statistics/index.vue
+++ b/src/views/statistics/index.vue
@@ -11,7 +11,7 @@
周
月
- 季
+
年
+
+
+
+
+

+
指标
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -39,7 +77,7 @@
周
月
- 季
+
年
-
+
-
+
@@ -73,7 +111,7 @@
周
月
- 季
+
年
{
+ _this.$nextTick(() => {
+ _this.init()
+ })
+ }, 100)
+
},
methods: {
init(filed) {
@@ -223,6 +212,13 @@
this.getData9()
this.getData10()
break;
+ case "queryParams3":
+ this.getData11()
+ this.getData12()
+ this.getData13()
+ this.getData14()
+ this.getData15()
+ break;
default:
this.getData1()
this.getData2()
@@ -234,6 +230,11 @@
this.getData8()
this.getData9()
this.getData10()
+ this.getData11()
+ this.getData12()
+ this.getData13()
+ this.getData14()
+ this.getData15()
break;
}
@@ -281,7 +282,7 @@
var myChart = echarts.init(chartDom);
var option = {
title: {
- text: '病历统计',
+ text: '患者总数',
left: 'left'
},
color: ['#6F7FF6', '#F3D37C', '#5AD0A5', '#008660'],
@@ -388,7 +389,7 @@
var option = {
title: {
- text: '数据对比',
+ text: '患者统计',
left: 'left'
},
color: ['#6F7FF6', '#F3D37C', '#5AD0A5', '#008660'],
@@ -462,6 +463,7 @@
},
// 静脉溶栓统计- 数据对比
async getData4() {
+ return
var chartDom = this.$refs.jmrsboxrt
var myChart = echarts.init(chartDom);
@@ -527,7 +529,7 @@
option && myChart.setOption(option);
},
- // 静脉溶栓统计- sICH发生率
+ // 静脉溶栓统计- sICH发生率 静脉溶栓并发症发生率
async getData5() {
var chartDom = this.$refs.jmrsboxlb
var myChart = echarts.init(chartDom);
@@ -561,7 +563,7 @@
var option = {
title: {
- text: 'slCH发生率',
+ text: '静脉溶栓并发症发生率',
left: 'left'
},
color: ['#6F7FF6', '#F3D37C', '#5AD0A5', '#008660'],
@@ -582,6 +584,7 @@
},
// 静脉溶栓统计- DNT分布
async getData6() {
+ return
var chartDom = this.$refs.jmrsboxrb
var myChart = echarts.init(chartDom);
@@ -650,7 +653,8 @@
async getData7() {
var chartDom = this.$refs.xgnboxlt
var myChart = echarts.init(chartDom);
- const res = await querySichResult({
+ // const res = await querySichResult({
+ const res = await queryXgzlLv({
param: this.queryParams3
})
@@ -667,7 +671,7 @@
type: 'line',
areaStyle: {},
data: newlist.map(a => ({
- value: a['bfNum'],
+ value: a['total'],
itemStyle: {
borderRadius: [20, 20, 0, 0]
},
@@ -695,7 +699,7 @@
var option = {
title: {
- text: '血管内治疗率',
+ text: '血管内治疗再通率',
left: 'left'
},
color: ['#6F7FF6', '#F3D37C', '#5AD0A5', '#008660'],
@@ -716,7 +720,7 @@
option && myChart.setOption(option);
},
// 血管内治疗统计- 数据对比
- async getData8() {
+ async _getData8() {
var chartDom = this.$refs.xgnboxrt
var myChart = echarts.init(chartDom);
@@ -780,6 +784,61 @@
option && myChart.setOption(option);
},
+ // 血管内治疗统计- (2) 血管内治疗并发症发生率
+ async getData8() {
+ var chartDom = this.$refs.xgnboxrt;
+ chartDom.style.width = '100%'; // 强制设置宽度
+ var myChart = echarts.init(chartDom);
+ const res = await queryXgzlBfzResult({
+ param: this.queryParams3
+ })
+
+ var xdata = [];
+ const newlist = res.data.map(a => {
+ xdata.push(dayjs(a.time).format('YYYY-MM-DD'))
+ return {
+ ...a,
+ time: dayjs(a.time).format('YYYY-MM-DD')
+ }
+ })
+
+ var series = [{
+ type: 'line',
+ areaStyle: {},
+ data: newlist.map(a => ({
+ value: a['bfNum'],
+ itemStyle: {
+ borderRadius: [20, 20, 0, 0]
+ },
+ label: {
+ show: true,
+ position: 'top'
+ },
+ }))
+ }];
+
+ var option = {
+ title: {
+ text: '血管内治疗并发症发生率',
+ left: 'left'
+ },
+ color: ['#6F7FF6', '#F3D37C', '#5AD0A5', '#008660'],
+ legend: {
+ left: 'right'
+ },
+ xAxis: [{
+ type: 'category',
+ boundaryGap: false,
+ data: xdata
+ }],
+ yAxis: [{
+ type: 'value'
+ }],
+ series: series
+ };
+
+ option && myChart.setOption(option);
+ },
// 血管内治疗统计- DPT
async getData9() {
var chartDom = this.$refs.xgnboxlb
@@ -914,12 +973,350 @@
option && myChart.setOption(option);
},
+
+ // 指标- DNT
+ async getData11() {
+ var chartDom = this.$refs.zbboxlt
+ var myChart = echarts.init(chartDom);
+ const res = await queryDntResult({
+ param: this.queryParams4
+ })
+
+ var items = ['≤45min', '≤60min', '>60min']
+ var xdata = [];
+ var series = [];
+ const newlist = res.data.map(a => {
+ xdata.push(dayjs(a.time).format('YYYY-MM-DD'))
+ return {
+ ...a,
+ time: dayjs(a.time).format('YYYY-MM-DD')
+ }
+ })
+ items.forEach(i => {
+ var item = {
+ name: i,
+ type: 'bar',
+ barWidth: 5,
+ data: [],
+ }
+ var filed = ""
+ if (i == '≤45min') filed = "dy45"
+ else if (i == '≤60min') filed = "dy60"
+ else if (i == '>60min') filed = "other"
+ newlist.forEach(a => {
+ var itemdata = {
+ value: a[filed],
+ itemStyle: {
+ borderRadius: [20, 20, 0, 0]
+ },
+ label: {
+ show: true,
+ position: 'top'
+ },
+ }
+ item.data.push(itemdata)
+ })
+ series.push(item)
+ })
+ var option = {
+ title: {
+ text: 'DNT分布',
+ left: 'left'
+ },
+ color: ['#6F7FF6', '#F3D37C', '#5AD0A5', '#008660'],
+ legend: {
+ left: 'right'
+ },
+ xAxis: [{
+ type: 'category',
+ boundaryGap: false,
+ data: xdata
+ }],
+ yAxis: [{
+ type: 'value'
+ }],
+ series: series
+ };
+
+ option && myChart.setOption(option);
+ },
+ // 指标- DPT
+ async getData12() {
+ var chartDom = this.$refs.zbboxrt
+ var myChart = echarts.init(chartDom);
+
+ const res = await queryDptResult({
+ param: this.queryParams4
+ })
+
+ var items = ['≤45min', '≤60min', '>60min']
+ var xdata = [];
+ var series = [];
+ const newlist = res.data.map(a => {
+ xdata.push(dayjs(a.time).format('YYYY-MM-DD'))
+ return {
+ ...a,
+ time: dayjs(a.time).format('YYYY-MM-DD')
+ }
+ })
+ items.forEach(i => {
+ var item = {
+ name: i,
+ type: 'bar',
+ barWidth: 5,
+ data: [],
+ }
+ var filed = ""
+ if (i == '≤45min') filed = "dy45"
+ else if (i == '≤60min') filed = "dy60"
+ else if (i == '>60min') filed = "other"
+ newlist.forEach(a => {
+ var itemdata = {
+ value: a[filed],
+ itemStyle: {
+ borderRadius: [20, 20, 0, 0]
+ },
+ label: {
+ show: true,
+ position: 'top'
+ },
+ }
+ item.data.push(itemdata)
+ })
+ series.push(item)
+ })
+ var option = {
+ title: {
+ text: 'DPT分布',
+ left: 'left'
+ },
+ color: ['#6F7FF6', '#F3D37C', '#5AD0A5', '#008660'],
+ legend: {
+ left: 'right'
+ },
+ xAxis: [{
+ type: 'category',
+ data: xdata
+ }],
+ yAxis: [{
+ type: 'value'
+ }],
+ series: series
+ };
+
+ option && myChart.setOption(option);
+ },
+ // 指标- DIT
+ async getData13() {
+ var chartDom = this.$refs.zbboxlb
+ var myChart = echarts.init(chartDom);
+
+ const res = await queryDitResult({
+ param: this.queryParams4
+ })
+
+ var items = ['≤45min', '≤60min', '>60min']
+ var xdata = [];
+ var series = [];
+ const newlist = res.data.map(a => {
+ xdata.push(dayjs(a.time).format('YYYY-MM-DD'))
+ return {
+ ...a,
+ time: dayjs(a.time).format('YYYY-MM-DD')
+ }
+ })
+ items.forEach(i => {
+ var item = {
+ name: i,
+ type: 'bar',
+ barWidth: 5,
+ data: [],
+ }
+ var filed = ""
+ if (i == '≤45min') filed = "dy45"
+ else if (i == '≤60min') filed = "dy60"
+ else if (i == '>60min') filed = "other"
+ newlist.forEach(a => {
+ var itemdata = {
+ value: a[filed],
+ itemStyle: {
+ borderRadius: [20, 20, 0, 0]
+ },
+ label: {
+ show: true,
+ position: 'top'
+ },
+ }
+ item.data.push(itemdata)
+ })
+ series.push(item)
+ })
+
+ var option = {
+ title: {
+ text: 'DIT分布',
+ left: 'left'
+ },
+ color: ['#6F7FF6', '#F3D37C', '#5AD0A5', '#008660'],
+ legend: {
+ left: 'right'
+ },
+ xAxis: [{
+ type: 'category',
+ data: xdata
+ }],
+ yAxis: [{
+ type: 'value'
+ }],
+ series: series
+ };
+
+ option && myChart.setOption(option);
+ },
+ // 指标- ONT
+ async getData14() {
+ var chartDom = this.$refs.zbboxrb
+ var myChart = echarts.init(chartDom);
+
+ const res = await queryOntResult({
+ param: this.queryParams4
+ })
+
+ var items = ['≤45min', '≤60min', '>60min']
+ var xdata = [];
+ var series = [];
+ const newlist = res.data.map(a => {
+ xdata.push(dayjs(a.time).format('YYYY-MM-DD'))
+ return {
+ ...a,
+ time: dayjs(a.time).format('YYYY-MM-DD')
+ }
+ })
+ items.forEach(i => {
+ var item = {
+ name: i,
+ type: 'bar',
+ barWidth: 5,
+ data: [],
+ }
+ var filed = ""
+ if (i == '≤45min') filed = "dy45"
+ else if (i == '≤60min') filed = "dy60"
+ else if (i == '>60min') filed = "other"
+ newlist.forEach(a => {
+ var itemdata = {
+ value: a[filed],
+ itemStyle: {
+ borderRadius: [20, 20, 0, 0]
+ },
+ label: {
+ show: true,
+ position: 'top'
+ },
+ }
+ item.data.push(itemdata)
+ })
+ series.push(item)
+ })
+
+ var option = {
+ title: {
+ text: 'ONT分布',
+ left: 'left'
+ },
+ color: ['#6F7FF6', '#F3D37C', '#5AD0A5', '#008660'],
+ legend: {
+ left: 'right'
+ },
+ xAxis: [{
+ type: 'category',
+ data: xdata
+ }],
+ yAxis: [{
+ type: 'value'
+ }],
+ series: series
+ };
+
+ option && myChart.setOption(option);
+ },
+ // 指标- OPT
+ async getData15() {
+ var chartDom = this.$refs.zbboxlbb
+ var myChart = echarts.init(chartDom);
+ const res = await queryOptResult({
+ param: this.queryParams4
+ })
+
+ var items = ['≤45min', '≤60min', '>60min']
+ var xdata = [];
+ var series = [];
+ const newlist = res.data.map(a => {
+ xdata.push(dayjs(a.time).format('YYYY-MM-DD'))
+ return {
+ ...a,
+ time: dayjs(a.time).format('YYYY-MM-DD')
+ }
+ })
+ items.forEach(i => {
+ var item = {
+ name: i,
+ type: 'bar',
+ barWidth: 5,
+ data: [],
+ }
+ var filed = ""
+ if (i == '≤45min') filed = "dy45"
+ else if (i == '≤60min') filed = "dy60"
+ else if (i == '>60min') filed = "other"
+ newlist.forEach(a => {
+ var itemdata = {
+ value: a[filed],
+ itemStyle: {
+ borderRadius: [20, 20, 0, 0]
+ },
+ label: {
+ show: true,
+ position: 'top'
+ },
+ }
+ item.data.push(itemdata)
+ })
+ series.push(item)
+ })
+
+ var option = {
+ title: {
+ text: 'OPT分布',
+ left: 'left'
+ },
+ color: ['#6F7FF6', '#F3D37C', '#5AD0A5', '#008660'],
+ legend: {
+ left: 'right'
+ },
+ xAxis: [{
+ type: 'category',
+ boundaryGap: false,
+ data: xdata
+ }],
+ yAxis: [{
+ type: 'value'
+ }],
+ series: series
+ };
+
+ option && myChart.setOption(option);
+ },
+
+
}
}
\ No newline at end of file
diff --git a/src/views/thrombolysis/components/throm-before1.vue b/src/views/thrombolysis/components/throm-before1.vue
index 612cc54..71d4e23 100644
--- a/src/views/thrombolysis/components/throm-before1.vue
+++ b/src/views/thrombolysis/components/throm-before1.vue
@@ -1,7 +1,7 @@
-
-
+
+
-
-
-
-
+
+
+
+
-
-
+
+
@@ -78,20 +41,10 @@
-
-
+
+
{{ item }}
@@ -101,19 +54,10 @@
得分
-
+
-
+
{{
item.text
@@ -122,47 +66,23 @@
{{ item.description }}
-
+
-
+
-
-
+
+ ) in item.range" :key="val.value" :value="val.value" @click="item.visible = false">
{{ val.value }}
-
+
@@ -170,14 +90,17 @@
-
-