Commit b910a8b3 by 唐玉峰

疾病分组

parent e570dbf8
import { nextTick } from '@vue/composition-api';
import * as echarts from 'echarts';
import { nextTick } from "@vue/composition-api";
import * as echarts from "echarts";
/**
* @param echarts初始化
......@@ -11,79 +9,77 @@ import * as echarts from 'echarts';
export function initEcharts(option, panelId) {
var svChart;
return nextTick(() => {
svChart = echarts.getInstanceByDom(document.getElementById(panelId));
if (svChart == null) {
svChart = echarts.init(document.getElementById(panelId));
}
document.getElementById(panelId).setAttribute('_echarts_instance_', '');
document.getElementById(panelId).setAttribute("_echarts_instance_", "");
svChart.clear();
svChart.setOption(option);
svChart.resize();
// 屏幕大小改变
window.addEventListener('resize', () => {
window.addEventListener("resize", () => {
svChart.resize();
});
return svChart;
})
});
}
//百分比图 智能分组
export function categoryChart(data, tcolor) {
const option = {
title: [{
text: data + `%`,
x: 'center',
top: '38%',
textStyle: {
fontSize: '16', //百分比的样式
color: tcolor,
fontFamily: 'Arial',
foontWeight: '600',
title: [
{
text: data + `%`,
x: "center",
top: "38%",
textStyle: {
fontSize: "16", //百分比的样式
color: tcolor,
fontFamily: "Arial",
foontWeight: "600",
},
},
},],
],
polar: {
radius: ['100%', '60%'],
center: ['50%', '50%'],
radius: ["100%", "60%"],
center: ["50%", "50%"],
},
angleAxis: {
max: 100,
show: false,
},
radiusAxis: {
type: 'category',
type: "category",
show: false,
},
series: [{
name: '',
type: 'bar',
roundCap: true,
barWidth: 6,
showBackground: true,
backgroundStyle: {
color: '#f3fafd', //留白颜色
},
data: [data],
coordinateSystem: 'polar',
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [{
offset: 0,
color: tcolor, //填色颜色
},]),
series: [
{
name: "",
type: "bar",
roundCap: true,
barWidth: 6,
showBackground: true,
backgroundStyle: {
color: "#f3fafd", //留白颜色
},
data: [data],
coordinateSystem: "polar",
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [
{
offset: 0,
color: tcolor, //填色颜色
},
]),
},
},
},
},],
],
};
return option;
......@@ -92,63 +88,68 @@ export function categoryChart(data, tcolor) {
//百分比图 病案入组
export function categoryChart11(text, data, tcolor) {
const option = {
title: [{
text: text,
x: 'center',
top: '52%',
textStyle: {
fontSize: '14', //百分比的样式
color: tcolor,
fontFamily: 'PingFang SC',
foontWeight: '300',
title: [
{
text: text,
x: "center",
top: "52%",
textStyle: {
fontSize: "14", //百分比的样式
color: tcolor,
fontFamily: "PingFang SC",
foontWeight: "300",
},
},
},
{
text: data + `%`,
x: 'center',
top: '28%',
textStyle: {
fontSize: '20', //百分比的样式
color: tcolor,
fontFamily: 'Arial',
foontWeight: '600',
{
text: data ? data : 0 + `%`,
x: "center",
top: "28%",
textStyle: {
fontSize: "20", //百分比的样式
color: tcolor,
fontFamily: "Arial",
foontWeight: "600",
},
},
},
],
polar: {
radius: ['100%', '60%'],
center: ['50%', '50%'],
radius: ["100%", "60%"],
center: ["50%", "50%"],
},
angleAxis: {
max: 100,
show: false,
},
radiusAxis: {
type: 'category',
type: "category",
show: false,
},
series: [{
name: '',
type: 'bar',
roundCap: true,
barWidth: 6,
showBackground: true,
backgroundStyle: {
color: '#f3fafd', //留白颜色
},
data: [data],
coordinateSystem: 'polar',
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [{
offset: 0,
color: tcolor, //填色颜色
},]),
series: [
{
name: "",
type: "bar",
roundCap: true,
barWidth: 6,
showBackground: true,
backgroundStyle: {
color: "#f3fafd", //留白颜色
},
data: [data],
coordinateSystem: "polar",
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [
{
offset: 0,
color: tcolor, //填色颜色
},
]),
},
},
},
},],
],
};
return option;
}
\ No newline at end of file
}
......@@ -16,10 +16,6 @@
<el-button class="outsetgrouping_button_Searchbtn" type="primary" size="mini" @click="gosear">
<span class="s2">疾病分组查询</span>
</el-button>
<el-button class="outsetgrouping_button_Submitbtn" size="mini" type="primary" @click="submit">
<span class="iconfont icon-ipr_tijiao"></span>
<span class="s2">提交</span>
</el-button>
</div>
<div class="outsetgrouping_top">
<div class="outsetgrouping_top_message">
......@@ -104,8 +100,8 @@
<div class="outsetgrouping_centent_totalnum" v-for="(item, index) in CorePercents" :key="index">
<div class="outsetgrouping_centent_totalnum_left">
<div class="outsetgrouping_centent_totalnum_left_radios">
<!-- <input type="radio" name="radios" v-model="radio" /> -->
<input type="radio" name="radios" :value="item.id" @input="radios" />
<!-- <input type="radio" name="radios" :value="item.id" @input="radios" /> -->
<el-button class="outsetgrouping_button_Submitbtn" size="mini" type="primary" @click="submit(item.coreID)"> 分组提交 </el-button>
</div>
<div class="outsetgrouping_centent_totalnum_left_text">
......@@ -140,6 +136,60 @@
><span>盈亏:{{ item.profitLoss }}</span>
</div>
</div>
<div class="outpatientDetails_fenqu" v-if="item.lowMagnification != 0 && item.highMagnification != 0">
<div class="outpatientDetails_fenqu_di">
<div class="outpatientDetails_fenqu_di_bb">
<div class="outpatientDetails_fenqu_di_bb_div1">
<span
class="outpatientDetails_fenqu_di_bb_div1_num"
:style="{ marginLeft: item.totalwidth - 1 + '%', color: item.totalcolor }"
>{{ decimal(item.totalFee) }}</span
>
<span
class="outpatientDetails_fenqu_di_bb_div1_he"
:style="{
marginLeft: item.totalwidth + '%',
backgroundColor: item.totalcolor,
}"
></span>
</div>
<div class="outpatientDetails_fenqu_di_bb_div2">
<span class="outpatientDetails_fenqu_di_bb_div2_span1" :style="{ width: item.lowwidth + '%' }"
><span
class="outpatientDetails_fenqu_di_bb_div2_span1_t1"
:title="'低倍率区域:&lt;=' + Math.round(item.lowMagnification)"
>低倍率区域:&lt;={{ Math.round(item.lowMagnification) }}</span
></span
>
<span class="outpatientDetails_fenqu_di_bb_div2_span2" :style="{ width: item.contentwidth + '%' }"
><span
class="outpatientDetails_fenqu_di_bb_div2_span2_t2"
:title="'正常区域:' + (Math.round(item.lowMagnification) + 1) + '~' + (Math.round(item.highMagnification) - 1)"
>正常区域:{{ Math.round(item.lowMagnification) + 1 + "~" + (Math.round(item.highMagnification) - 1) }}</span
></span
>
<span class="outpatientDetails_fenqu_di_bb_div2_span3" :style="{ width: item.heightwidth + '%' }"
><span
class="outpatientDetails_fenqu_di_bb_div2_span3_t3"
:title="'高倍率区域:>=' + Math.round(item.highMagnification)"
>高倍率区域:>={{ Math.round(item.highMagnification) }}</span
></span
>
</div>
<!-- <div class="outpatientDetails_fenqu_di_bb_div3">
<span class="outpatientDetails_fenqu_di_bb_div3_span1" :style="{ width: lowwidth + '%' }"> 0 </span>
<span class="outpatientDetails_fenqu_di_bb_div3_span2" :style="{ width: contentwidth + '%' }">
{{ Math.round(lowMagnification) }}
</span>
<span class="outpatientDetails_fenqu_di_bb_div3_span3" :style="{ width: heightwidth + '%' }">
<span class="outpatientDetails_fenqu_di_bb_div3_span2_nmm1">{{ Math.round(highMagnification) }}</span>
<span class="outpatientDetails_fenqu_di_bb_div3_span2_nmm2">{{ Math.round(heightnum) }}</span>
</span>
</div> -->
</div>
</div>
</div>
</div>
</div>
<!-- <div class="outsetgrouping_centent_totalnum_right">
......@@ -191,7 +241,6 @@
</div> -->
</div>
<!-- 如果没有搜索时的样式 -->
<div v-show="nolistShow" class="outsetgrouping_centent_nodata">
<div class="outsetgrouping_centent_nodata_img">
<img src="../assets/img/nodata.png" alt="" />
......@@ -201,7 +250,7 @@
</div>
<!-- 弹出层 -->
<el-dialog center :visible.sync="addrecordEnrollmentShow" :before-close="closeDialog" :fullscreen="true">
<el-dialog center :visible.sync="addrecordEnrollmentShow" class="fullscreen" :before-close="closeDialog" :fullscreen="true">
<!-- 病案入组 -->
<div class="outaddrecordEnrollment" id="outaddrecordEnrollment">
<div class="outaddrecordEnrollment_search">
......@@ -303,31 +352,19 @@
</div>
<div class="outaddrecordEnrollment_centent_totalnum_left_text3">
<span>预计DRG支付费用:{{ item.unitfee }}</span
><span>院内历年平均费用:{{ item.avgFee }}</span
><span>院内历年平均住院天数:{{ item.avgInHosDay }}</span>
<span>预计DRG支付费用:{{ item.unitfee }}</span>
<span>入组类型:{{ item.disNature }}</span>
</div>
</div>
<div class="outaddrecordEnrollment_centent_totalnum_right">
<!-- <div class="outaddrecordEnrollment_centent_totalnum_right">
<div :id="`indexChart11` + index" class="outaddrecordEnrollment_centent_totalnum_right_echar1"></div>
<div :id="`indexChart11two` + index" class="outaddrecordEnrollment_centent_totalnum_right_echar2"></div>
<div :id="`indexChart11tree` + index" class="outaddrecordEnrollment_centent_totalnum_right_echar3"></div>
<div :id="`indexChart11fore` + index" class="outaddrecordEnrollment_centent_totalnum_right_echar4"></div>
<div :id="`indexChart11file` + index" class="outaddrecordEnrollment_centent_totalnum_right_echar5"></div>
</div>
</div> -->
</div>
<!-- 如果没有数据时的样式 -->
<!-- <div
v-show="addnodataShow"
class="outaddrecordEnrollment_centent_nodata"
>
<div class="outaddrecordEnrollment_centent_nodata_img">
<img src="../assets/img/nodata.png" alt="" />
</div>
<div class="outaddrecordEnrollment_centent_nodata_text">
请输入要搜索的内容
</div>
</div> -->
<div v-show="addnolistShow" class="outaddrecordEnrollment_centent_nodata">
<div class="outaddrecordEnrollment_centent_nodata_img">
<img src="../assets/img/nodata.png" alt="" />
......@@ -343,17 +380,14 @@
</template>
<script>
import http from "../utils/http";
import { reactive, toRefs, onMounted, nextTick, computed } from "@vue/composition-api";
import { decimal } from "../utils/decimal";
import { Message } from "element-ui";
import { useRoute, useRouter } from "../utils/useVueRouter";
import { initEcharts, categoryChart, categoryChart11 } from "../utils/echarts";
export default {
name: "outHistorygrouping",
setup() {
let state = reactive({
data() {
return {
abc: "",
casehisObj: null,
searchForm: {
......@@ -445,287 +479,283 @@ export default {
otssoptions: [], //其他手术
diagList: [], //诊断
opsList: [], //手术
});
//返回
const router = useRouter();
const goback = () => {
router.go(-1);
};
},
mounted() {
this.getCaseHis(this.$route.query.id);
if (this.searchForm.diagName.length > 0) {
this.getlist();
}
},
methods: {
decimal,
goback() {
router.go(-1);
},
//疾病查询
const gosear = () => {
state.addrecordEnrollmentShow = true;
};
gosear() {
this.addrecordEnrollmentShow = true;
},
//获取基本数据
function getCaseHis(code) {
getCaseHis(code) {
http.post(`/medical/Get/casehisData?id=${code}`, {})
.then((data) => {
state.casehisObj = data;
console.log("data", data);
state.diagMapList = data.diagMapList;
state.opsMapList = data.opsMapList;
getlist();
this.casehisObj = data;
this.diagMapList = data.diagMapList;
this.opsMapList = data.opsMapList;
this.getlist();
})
.catch((error) => {});
}
},
//获取列表数据
const getlist = () => {
getlist() {
http.post(`/medical/get/GetCorePercents`, {
Type: 1,
DiagMapList: state.diagMapList,
OpsMapList: state.opsMapList,
id: route.value.query.id,
DiagMapList: this.diagMapList,
OpsMapList: this.opsMapList,
id: this.$route.query.id,
})
.then((data) => {
state.CorePercents = data.list;
if (state.CorePercents.length == 0) {
state.nolistShow = true;
// state.nodataShow = false;
}
for (var i = 0; i < state.CorePercents.length; i++) {
this.$nextTick();
initEcharts(categoryChart(state.CorePercents[i].drugPercent, "#2CABE3"), `indexChart${i}`);
initEcharts(categoryChart(state.CorePercents[i].materialsPercent, "#71D875"), `indexCharttwo${i}`);
initEcharts(categoryChart(state.CorePercents[i].inspectPercent, "#F35E77"), `indexCharttree${i}`);
initEcharts(categoryChart(state.CorePercents[i].testPercent, "#FFB321"), `indexChartfore${i}`);
initEcharts(categoryChart(state.CorePercents[i].otherPercent, "#C05EF3"), `indexChartfile${i}`);
this.CorePercents = data.list;
this.CorePercents.map((item) => {
// 高倍率>总费用 高倍率金额+高倍率金额*30%
if (item.highMagnification > item.totalFee) {
item.heightnum = item.highMagnification + item.highMagnification * 0.3;
} else if (item.highMagnification < item.totalFee) {
// 高倍率<总费用 患者总费用的金额+患者总费用的金额*30%
item.heightnum = item.totalFee + item.totalFee * 0.3;
}
// 低倍率宽度
item.lowwidth = Math.round((Math.round(item.lowMagnification) / Math.round(item.heightnum)) * 100);
// 高倍率宽度
item.heightwidth = Math.round(((Math.round(item.heightnum) - Math.round(item.highMagnification)) / Math.round(item.heightnum)) * 100);
// 正常倍率宽度
item.contentwidth = 100 - (item.lowwidth + item.heightwidth);
//总费用宽度
item.totalwidth = Math.round((Math.round(item.totalFee) / Math.round(item.heightnum)) * 100);
// 判断总费用显示的颜色
if (item.totalFee < item.lowMagnification) {
item.totalcolor = "#e9c622";
} else if (item.totalFee > item.lowMagnification && item.totalFee < item.highMagnification) {
item.totalcolor = "#22d016";
} else if (item.totalFee > item.highMagnification) {
item.totalcolor = "#ff7e00";
}
if (item.lowMagnification == 0 || item.highMagnification == 0) {
item.bottomheight = "80%";
} else if (data.lowMagnification != 0) {
item.bottomheight = "68%";
}
});
if (this.CorePercents.length == 0) {
this.nolistShow = true;
}
// for (var i = 0; i < this.CorePercents.length; i++) {
// this.$nextTick();
// initEcharts(categoryChart(this.CorePercents[i].drugPercent, "#2CABE3"), `indexChart${i}`);
// initEcharts(categoryChart(this.CorePercents[i].materialsPercent, "#71D875"), `indexCharttwo${i}`);
// initEcharts(categoryChart(this.CorePercents[i].inspectPercent, "#F35E77"), `indexCharttree${i}`);
// initEcharts(categoryChart(this.CorePercents[i].testPercent, "#FFB321"), `indexChartfore${i}`);
// initEcharts(categoryChart(this.CorePercents[i].otherPercent, "#C05EF3"), `indexChartfile${i}`);
// }
})
.catch((error) => {});
};
},
//提交
const submit = () => {
if (!state.radio) {
Message.warning({
message: "请先选择要入组的病组",
type: "warning",
});
} else {
http.post(`/medical/Update/casehisById?PatientId=${route.value.query.id}`, [state.coreID])
.then((data) => {
Message.success({
message: `${data.message}`,
type: "success",
});
getCaseHis(route.value.query.id);
})
.catch((error) => {});
}
};
submit(coreID) {
http.post(`/medical/Update/casehisById?PatientId=${this.$route.query.id}&coreid=${coreID}`)
.then((data) => {
Message.success({
message: `${data.message}`,
type: "success",
});
var route = useRoute();
this.getCaseHis(this.$route.query.id);
})
.catch((error) => {});
},
//关闭弹层前的回调
const closeDialog = () => {
state.addrecordEnrollmentShow = false;
state.outaddsearchForm = {
closeDialog() {
this.addrecordEnrollmentShow = false;
this.outaddsearchForm = {
diagName: "",
opsName: "",
};
(state.otdiagName = []), (state.otopsName = []), addclear();
};
(this.otdiagName = []), (this.otopsName = []), this.addclear();
},
//清空输入框的值时触发
const addclear = () => {
state.addCorePercents = [];
state.addnodataShow = true;
};
addclear() {
this.addCorePercents = [];
this.addnodataShow = true;
},
//获取诊断数据
const remoteMethod = (query) => {
remoteMethod(query) {
if (query) {
http.post(`/medical/get/GetDiagOpss?diagName=${query}&type=${1}`, {})
.then((data) => {
state.zdoptions = data;
this.zdoptions = data;
})
.catch((error) => {});
} else {
state.zdoptions = [];
this.zdoptions = [];
}
};
},
//获取其他诊断数据
const otremoteMethod = (query) => {
otremoteMethod(query) {
if (query) {
http.post(`/medical/get/GetDiagOpss?diagName=${query}&type=${1}`, {})
.then((data) => {
state.otzdoptions = data;
this.otzdoptions = data;
})
.catch((error) => {});
} else {
state.zdoptions = [];
this.zdoptions = [];
}
};
},
//获取主手术,其他手术的数据
const ssremoteMethod = (query) => {
ssremoteMethod(query) {
if (query) {
http.post(`/medical/get/GetDiagOpss?diagName=${query}&type=${2}`, {})
.then((data) => {
state.ssoptions = data;
this.ssoptions = data;
})
.catch((error) => {});
} else {
state.zdoptions = [];
this.zdoptions = [];
}
};
},
//获取其他手术的数据
const otssremoteMethod = (query) => {
otssremoteMethod(query) {
if (query) {
http.post(`/medical/get/GetDiagOpss?diagName=${query}&type=${2}`, {})
.then((data) => {
state.otssoptions = data;
this.otssoptions = data;
})
.catch((error) => {});
} else {
state.zdoptions = [];
this.zdoptions = [];
}
};
},
//查询
const addsearch = () => {
addsearch() {
//诊断
if (state.otdiagName.length > 0 && state.outaddsearchForm.diagName) {
state.diagList.push({
diagCode: state.outaddsearchForm.diagName,
if (this.otdiagName.length > 0 && this.outaddsearchForm.diagName) {
this.diagList.push({
diagCode: this.outaddsearchForm.diagName,
diagOrder: "0",
});
state.otdiagName.forEach((i) => {
state.diagList.push({
this.otdiagName.forEach((i) => {
this.diagList.push({
diagCode: i,
diagOrder: "1",
});
});
} else if (state.outaddsearchForm.diagName) {
state.diagList.push({
diagCode: state.outaddsearchForm.diagName,
} else if (this.outaddsearchForm.diagName) {
this.diagList.push({
diagCode: this.outaddsearchForm.diagName,
diagOrder: "0",
});
} else if (state.otdiagName.length > 0) {
state.otdiagName.forEach((i) => {
state.diagList.push({
} else if (this.otdiagName.length > 0) {
this.otdiagName.forEach((i) => {
this.diagList.push({
diagCode: i,
diagOrder: "1",
});
});
}
// 手术
if (state.otopsName.length > 0 && state.outaddsearchForm.opsName) {
state.opsList.push({
opsCode: state.outaddsearchForm.opsName,
if (this.otopsName.length > 0 && this.outaddsearchForm.opsName) {
this.opsList.push({
opsCode: this.outaddsearchForm.opsName,
diagOrder: "0",
});
state.otopsName.forEach((i) => {
state.opsList.push({
this.otopsName.forEach((i) => {
this.opsList.push({
opsCode: i,
diagOrder: "1",
});
});
} else if (state.outaddsearchForm.opsName) {
state.opsList.push({
opsCode: state.outaddsearchForm.opsName,
} else if (this.outaddsearchForm.opsName) {
this.opsList.push({
opsCode: this.outaddsearchForm.opsName,
diagOrder: "0",
});
} else if (state.otopsName.length > 0) {
state.otopsName.forEach((i) => {
state.opsList.push({
} else if (this.otopsName.length > 0) {
this.otopsName.forEach((i) => {
this.opsList.push({
opsCode: i,
diagOrder: "1",
});
});
}
addgetlist();
};
this.addgetlist();
},
//获取列表数据
const addgetlist = () => {
addgetlist() {
http.post(`/medical/post/GetCorePercentsByAssemble`, {
a14: state.ageinput ? state.ageinput : "0", // 年龄
a16: state.ageinput2 ? state.ageinput2 : "0", // 年龄不足一周岁(天)
a12C: state.sexvalue, // 性别
icuTime: state.icuinput ? state.icuinput : "0", // icu总时长(分钟)
b34C: state.leavevalue, // 离院方式
diagList: state.diagList, // 诊断集合
opsList: state.opsList, // 手术集合
a14: this.ageinput ? this.ageinput : "0", // 年龄
a16: this.ageinput2 ? this.ageinput2 : "0", // 年龄不足一周岁(天)
a12C: this.sexvalue, // 性别
icuTime: this.icuinput ? this.icuinput : "0", // icu总时长(分钟)
b34C: this.leavevalue, // 离院方式
diagList: this.diagList, // 诊断集合
opsList: this.opsList, // 手术集合
})
.then((data) => {
state.addCorePercents = data;
if (state.addCorePercents.length == 0) {
state.addnolistShow = true;
this.addCorePercents = data;
if (this.addCorePercents.length == 0) {
this.addnolistShow = true;
} else {
state.addnolistShow = false;
}
// state.totalCount = data.totalCount;
for (var i = 0; i < state.addCorePercents.length; i++) {
initEcharts(categoryChart11("药占比", state.addCorePercents[i].drugPercent, "#2CABE3"), `indexChart11${i}`);
initEcharts(categoryChart11("耗材占比", state.addCorePercents[i].materialsPercent, "#71D875"), `indexChart11two${i}`);
initEcharts(categoryChart11("检查占比", state.addCorePercents[i].inspectPercent, "#F35E77"), `indexChart11tree${i}`);
initEcharts(categoryChart11("检验占比", state.addCorePercents[i].testPercent, "#FFB321"), `indexChart11fore${i}`);
initEcharts(categoryChart11("其他", state.addCorePercents[i].otherPercent, "#C05EF3"), `indexChart11file${i}`);
(state.diagList = []), (state.opsList = []);
this.addnolistShow = false;
}
// this.totalCount = data.totalCount;
// for (var i = 0; i < this.addCorePercents.length; i++) {
// initEcharts(categoryChart11("药占比", this.addCorePercents[i].drugPercent, "#2CABE3"), `indexChart11${i}`);
// initEcharts(categoryChart11("耗材占比", this.addCorePercents[i].materialsPercent, "#71D875"), `indexChart11two${i}`);
// initEcharts(categoryChart11("检查占比", this.addCorePercents[i].inspectPercent, "#F35E77"), `indexChart11tree${i}`);
// initEcharts(categoryChart11("检验占比", this.addCorePercents[i].testPercent, "#FFB321"), `indexChart11fore${i}`);
// initEcharts(categoryChart11("其他", this.addCorePercents[i].otherPercent, "#C05EF3"), `indexChart11file${i}`);
// (this.diagList = []), (this.opsList = []);
// }
})
.catch((error) => {});
};
const radios = (e) => {
state.radio = e.target.value;
state.coreID = state.CorePercents.find((item) => item.id == e.target.value).coreID;
};
},
radios(e) {
this.radio = e.target.value;
this.coreID = this.CorePercents.find((item) => item.id == e.target.value).coreID;
},
const toPage = () => {
http.get(`/medical/get/JumpHisMAInfo?id=${route.value.query.id}`, {})
toPage() {
http.get(`/medical/get/JumpHisMAInfo?id=${this.$route.query.id}`, {})
.then((data) => {
window.open(data.message);
})
.catch((error) => {
console.log(error);
});
};
const topage1 = () => {
http.get(`/medical/get/JumpHisRules?id=${route.value.query.id}`, {})
},
topage1() {
http.get(`/medical/get/JumpHisRules?id=${this.$route.query.id}`, {})
.then((data) => {
window.open(data.message);
})
.catch((error) => {});
};
onMounted(() => {
getCaseHis(route.value.query.id);
if (state.searchForm.diagName.length > 0) {
getlist();
}
// if (state.outaddsearchForm.diagName.length > 0) {
// addgetlist();
// }
});
return {
...toRefs(state),
decimal,
getCaseHis,
getlist,
submit,
goback,
gosear,
addsearch,
addgetlist,
remoteMethod,
otremoteMethod,
otssremoteMethod,
addclear,
ssremoteMethod,
closeDialog,
radios,
toPage,
topage1,
};
},
},
};
</script>
<style lang="scss" scoped>
<style lang="scss">
@import "../styles/mixin.scss";
@import "../styles/outHistorygrouping.scss";
.outsetgrouping {
......@@ -1061,7 +1091,7 @@ export default {
height: calc(100% - 229px);
overflow-y: auto;
&_totalnum {
height: 250px;
height: 300px;
background-color: #fff;
margin: 12px;
display: flex;
......@@ -1076,20 +1106,20 @@ export default {
align-items: center;
justify-content: center;
&_radios {
width: 3%;
width: 8%;
height: 30%;
display: flex;
justify-content: center;
align-items: center;
}
&_text {
width: 97%;
width: 92%;
height: 100%;
display: flex;
flex-direction: column;
justify-content: center;
&_msg1 {
height: 30%;
height: 15%;
box-sizing: content-box;
border: 10px solid rgba(44, 171, 227, 0.08);
border-bottom: 5px solid rgba(44, 171, 227, 0.08);
......@@ -1097,7 +1127,6 @@ export default {
margin-bottom: 5px;
// margin-top: 5px;
display: flex;
&_text11 {
width: 25%;
height: 100%;
......@@ -1180,12 +1209,11 @@ export default {
}
}
}
&_msg2 {
background-color: rgba(44, 171, 227, 0.08);
display: flex;
flex-direction: column;
height: 55%;
height: 35%;
justify-content: center;
padding-top: 10px;
&_text3 {
......@@ -1233,6 +1261,10 @@ export default {
}
}
}
.outpatientDetails_fenqu {
height: 35%;
margin-bottom: 0;
}
}
}
&_right {
......@@ -1337,8 +1369,12 @@ export default {
flex-direction: column;
justify-content: center;
align-content: center;
text-align: center;
&_img {
display: flex;
flex-direction: column;
justify-content: center;
align-content: center;
img {
width: 115px;
height: 102px;
......@@ -1357,7 +1393,13 @@ export default {
justify-content: flex-end;
margin-top: 1%;
}
.fullscreen {
.el-dialog.is-fullscreen {
.el-dialog__body {
height: 91%;
}
}
}
.outaddrecordEnrollment {
height: calc(100% - 50px);
background-color: white;
......@@ -1468,161 +1510,92 @@ export default {
}
}
}
// &_centent {
// background-color: #f1f5f8;
// height: 70vh;
// overflow-y: auto;
// &_totalnum {
// height: 151px;
// background-color: #fff;
// margin: 12px;
// display: flex;
// align-items: center;
// justify-content: space-around;
// &_left {
// flex: 1;
// width: 50%;
// height: 132px;
// background-color: rgba(44, 171, 227, 0.08);
// margin: 0 15px;
// display: flex;
// flex-direction: column;
// align-items: center;
// justify-content: center;
// &_text1 {
// width: 100%;
// height: 30%;
// display: flex;
// margin-top: 5px;
// margin-bottom: 10px;
// justify-content: space-between;
// span {
// height: 100%;
// width: 50%;
// margin: 5px 10px;
// background-color: #fff;
// display: flex;
// justify-content: start;
// align-items: center;
// font-size: 14px;
// padding-left: 10px;
// font-family: PingFang SC;
// font-weight: 300;
// color: #6a707e;
// }
// }
// &_text2 {
// width: 100%;
// height: 30%;
// display: flex;
// justify-content: space-between;
// span {
// height: 100%;
// width: 50%;
// margin: 5px 10px;
// background-color: #fff;
// display: flex;
// justify-content: start;
// align-items: center;
// font-size: 14px;
// padding-left: 10px;
// font-family: PingFang SC;
// font-weight: 300;
// color: #6a707e;
// }
// }
// &_text3 {
// margin-bottom: 10px;
// width: 100%;
// height: 30%;
// margin-top: 10px;
// display: flex;
// justify-content: space-between;
// span {
// height: 100%;
// width: 50%;
// margin: 5px 10px;
// background-color: #fff;
// display: flex;
// justify-content: start;
// align-items: center;
// font-size: 14px;
// padding-left: 10px;
// font-family: PingFang SC;
// font-weight: 300;
// color: #6a707e;
// }
// }
// }
// &_right {
// width: 50%;
// height: 132px;
// display: flex;
// justify-content: space-around;
// &_echar1 {
// width: 20%;
// height: 132px;
// }
// &_echar2 {
// width: 20%;
// height: 132px;
// }
// &_echar3 {
// width: 20%;
// height: 132px;
// }
// &_echar4 {
// width: 20%;
// height: 132px;
// }
// &_echar5 {
// width: 20%;
// height: 132px;
// }
// }
// }
// // 没有数据
// &_nodata {
// width: 100%;
// height: 100%;
// display: flex;
// flex-direction: column;
// justify-content: center;
// align-items: center;
// &_img {
// img {
// width: 115px;
// height: 102px;
// }
// }
// &_text {
// font-size: 18px;
// font-family: PingFang SC;
// font-weight: 400;
// color: #abafb3;
// }
// }
// }
&_centent {
background-color: #f1f5f8;
height: 63%;
height: 75%;
overflow-y: auto;
&_totalnum {
height: 140px;
height: 151px;
background-color: #fff;
margin: 12px;
display: flex;
flex-direction: column;
align-items: center;
justify-content: space-around;
&_left {
flex: 1;
width: 100%;
height: 70%;
width: 50%;
height: 132px;
background-color: rgba(44, 171, 227, 0.08);
margin: 0 15px;
display: flex;
flex-direction: row;
flex-direction: column;
align-items: center;
justify-content: center;
&_text1 {
width: 100%;
height: 30%;
display: flex;
margin-top: 5px;
margin-bottom: 10px;
justify-content: space-between;
span {
height: 100%;
width: 50%;
margin: 5px 10px;
background-color: #fff;
display: flex;
justify-content: start;
align-items: center;
font-size: 14px;
padding-left: 10px;
font-family: PingFang SC;
font-weight: 300;
color: #6a707e;
}
}
&_text2 {
width: 100%;
height: 30%;
display: flex;
justify-content: space-between;
span {
height: 100%;
width: 50%;
margin: 5px 10px;
background-color: #fff;
display: flex;
justify-content: start;
align-items: center;
font-size: 14px;
padding-left: 10px;
font-family: PingFang SC;
font-weight: 300;
color: #6a707e;
}
}
&_text3 {
margin-bottom: 10px;
width: 100%;
height: 30%;
margin-top: 10px;
display: flex;
justify-content: space-between;
span {
height: 100%;
width: 50%;
margin: 5px 10px;
background-color: #fff;
display: flex;
justify-content: start;
align-items: center;
font-size: 14px;
padding-left: 10px;
font-family: PingFang SC;
font-weight: 300;
color: #6a707e;
}
}
&_radios {
width: 3%;
height: 30%;
......@@ -1886,8 +1859,12 @@ export default {
flex-direction: column;
justify-content: center;
align-content: center;
text-align: center;
&_img {
display: flex;
justify-content: center;
align-content: center;
text-align: center;
img {
width: 115px;
height: 102px;
......
......@@ -12,6 +12,7 @@
<div class="outpatientDetails_top_div1">
<span class="span1">患者信息</span>
<div>
<el-button class="outpatientDetails_top_div1_button" type="primary" size="mini" @click="gosear"> 疾病分组查询 </el-button>
<el-button class="outpatientDetails_top_div1_button" size="mini" type="primary" @click="topage">病案质控</el-button>
<el-button class="outpatientDetails_top_div1_button" type="primary" size="mini" @click="getControl">医嘱质控</el-button>
</div>
......@@ -307,14 +308,140 @@
<div class="outpatientDetails_bottom_box_text">暂无数据</div>
</div>
</div> -->
<!-- 弹出层 -->
<el-dialog center :visible.sync="addrecordEnrollmentShow" :before-close="closeDialog" class="fullscreen" :fullscreen="true">
<!-- 病案入组 -->
<div class="outaddrecordEnrollment" id="outaddrecordEnrollment">
<div class="outaddrecordEnrollment_search">
<div class="outaddrecordEnrollment_search_div1">
<span class="outaddrecordEnrollment_search_div1_span1"><span style="color: red">*</span> 主诊断:</span>
<el-select
class="outaddrecordEnrollment_search_div1_inp1"
v-model="outaddsearchForm.diagName"
filterable
remote
reserve-keyword
placeholder="请输入主诊断"
:remote-method="remoteMethod"
size="mini"
clearable
>
<el-option v-for="item in zdoptions" :key="item.name" :label="item.name" :value="item.name" />
</el-select>
<span class="outaddrecordEnrollment_search_div1_span2">其他诊断:</span>
<el-select
class="outaddrecordEnrollment_search_div1_inp2"
v-model="otdiagName"
multiple
collapse-tags
collapse-tags-tooltip
filterable
remote
reserve-keyword
placeholder="请输入其他诊断"
:remote-method="otremoteMethod"
size="mini"
clearable
>
<el-option v-for="item in otzdoptions" :key="item.name" :label="item.name" :value="item.name" />
</el-select>
<span class="outaddrecordEnrollment_search_div1_span3">年龄:</span>
<el-input v-model="ageinput" placeholder="请输入年龄" class="outaddrecordEnrollment_search_div1_inp3" size="mini" />&nbsp;
<span class="outaddrecordEnrollment_search_div1_span4">ICU总时长:</span>
<el-input v-model="icuinput" placeholder="请输入ICU总时长" class="outaddrecordEnrollment_search_div1_inp4" size="mini" />&nbsp;分钟
<span class="outaddrecordEnrollment_search_div1_span5">
<el-button size="mini" type="primary" @click="addsearch">查询</el-button>
</span>
</div>
<div class="outaddrecordEnrollment_search_div2">
<span class="outaddrecordEnrollment_search_div2_span1">主手术:</span>
<el-select
class="outaddrecordEnrollment_search_div2_inp1"
v-model="outaddsearchForm.opsName"
filterable
remote
reserve-keyword
placeholder="请输入主手术"
:remote-method="ssremoteMethod"
size="mini"
clearable
>
<el-option v-for="item in ssoptions" :key="item.name" :label="item.name" :value="item.name" />
</el-select>
<span class="outaddrecordEnrollment_search_div2_span2">其他手术:</span>
<el-select
class="outaddrecordEnrollment_search_div2_inp2"
v-model="otopsName"
multiple
collapse-tags
collapse-tags-tooltip
filterable
remote
reserve-keyword
placeholder="请输入其他手术"
:remote-method="otssremoteMethod"
size="mini"
clearable
>
<el-option v-for="item in otssoptions" :key="item.name" :label="item.name" :value="item.name" />
</el-select>
<span class="outaddrecordEnrollment_search_div2_span3">新生儿年龄:</span>
<el-input v-model="ageinput2" placeholder="请输入新生儿年龄" class="outaddrecordEnrollment_search_div2_inp3" size="mini" />&nbsp;
<span class="outaddrecordEnrollment_search_div2_span4">离院方式:</span>
<el-select v-model="leavevalue" placeholder="请选择离院方式" size="mini" class="outaddrecordEnrollment_search_div2_inp4">
<el-option v-for="item in leaveoptions" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</div>
<div class="outaddrecordEnrollment_search_div3">
<span class="outaddrecordEnrollment_search_div3_span1">性别:</span>
<el-radio-group v-model="sexvalue">
<el-radio v-for="item in sexoptions" :key="item.value" :label="item.value" size="small">{{ item.label }}</el-radio>
</el-radio-group>
</div>
</div>
<div class="outaddrecordEnrollment_centent">
<div class="outaddrecordEnrollment_centent_totalnum" v-for="(item, index) in addCorePercents" :key="index">
<div class="outaddrecordEnrollment_centent_totalnum_left">
<div class="outaddrecordEnrollment_centent_totalnum_left_text1">
<span>分组编码:{{ item.code }}</span>
<span>入组名称:{{ item.coreName }}</span>
<span>基准点数:{{ item.score }}</span>
</div>
<div class="outaddrecordEnrollment_centent_totalnum_left_text3">
<span>预计DRG支付费用:{{ item.unitfee }}</span> <span>入组类型:{{ item.disNature }}</span>
</div>
</div>
<!-- <div class="outaddrecordEnrollment_centent_totalnum_right">
<div :id="`indexChart11` + index" class="outaddrecordEnrollment_centent_totalnum_right_echar1"></div>
<div :id="`indexChart11two` + index" class="outaddrecordEnrollment_centent_totalnum_right_echar2"></div>
<div :id="`indexChart11tree` + index" class="outaddrecordEnrollment_centent_totalnum_right_echar3"></div>
<div :id="`indexChart11fore` + index" class="outaddrecordEnrollment_centent_totalnum_right_echar4"></div>
<div :id="`indexChart11file` + index" class="outaddrecordEnrollment_centent_totalnum_right_echar5"></div>
</div> -->
</div>
<div v-show="addnolistShow" class="outaddrecordEnrollment_centent_nodata">
<div class="outaddrecordEnrollment_centent_nodata_img">
<img src="../assets/img/nodata.png" alt="" />
</div>
<div class="outaddrecordEnrollment_centent_nodata_text">暂无数据</div>
</div>
</div>
<div class="outaddrecordEnrollment_pagination"></div>
</div>
</el-dialog>
</div>
</template>
<script>
import http from "../utils/http";
import { reactive, toRefs, onMounted, nextTick, computed, ref } from "@vue/composition-api";
import { initEcharts, categoryChart, categoryChart11 } from "../utils/echarts";
import { decimal } from "../utils/decimal";
import { Message } from "element-ui";
import { useRoute, useRouter } from "../utils/useVueRouter";
import { setItem, getItem } from "../utils/auth";
import { Loading } from "element-ui";
......@@ -409,6 +536,79 @@ export default {
spinner: "el-icon-loading",
background: "rgba(0, 0, 0, 0.5)",
},
//疾病查询
addrecordEnrollmentShow: false,
outaddsearchForm: {
diagName: "",
opsName: "",
},
addCorePercents: [],
addnolistShow: true, //没有搜索数据的时候显示
addgroupList: [], //主诊断
addgroupArr: [],
addgroupList2: [], //主手术
addgroupArr2: [],
addrecordEnrollmentShow: false,
// 性别选择器
sexoptions: [
{
label: "未知",
value: "0",
},
{
label: "男",
value: "1",
},
{
label: "女",
value: "2",
},
],
//离院方式选择器
leaveoptions: [
{
label: "医嘱离院",
value: "1",
},
{
label: "医嘱转院",
value: "2",
},
{
label: "医嘱转社区卫生服务机构/乡镇卫生院",
value: "3",
},
{
label: "非医嘱离院",
value: "4",
},
{
label: "死亡",
value: "5",
},
{
label: "其他",
value: "9",
},
],
//性别输入框
sexvalue: "0",
//年龄 岁
ageinput: "0",
//年龄 天
ageinput2: "0",
//icu时长
icuinput: "0",
//离院方式
leavevalue: "1",
otdiagName: "", //其他诊断
otopsName: "", //其他手术
zdoptions: [], //诊断的数据
otzdoptions: [], //其他诊断数据
ssoptions: [], //主手术
otssoptions: [], //其他手术
diagList: [], //诊断
opsList: [], //手术
};
},
mounted() {
......@@ -417,6 +617,158 @@ export default {
this.getlefttable();
},
methods: {
//疾病查询
gosear() {
this.addrecordEnrollmentShow = true;
},
//查询
addsearch() {
//诊断
if (this.otdiagName.length > 0 && this.outaddsearchForm.diagName) {
this.diagList.push({
diagCode: this.outaddsearchForm.diagName,
diagOrder: "0",
});
this.otdiagName.forEach((i) => {
this.diagList.push({
diagCode: i,
diagOrder: "1",
});
});
} else if (this.outaddsearchForm.diagName) {
this.diagList.push({
diagCode: this.outaddsearchForm.diagName,
diagOrder: "0",
});
} else if (this.otdiagName.length > 0) {
this.otdiagName.forEach((i) => {
this.diagList.push({
diagCode: i,
diagOrder: "1",
});
});
}
// 手术
if (this.otopsName.length > 0 && this.outaddsearchForm.opsName) {
this.opsList.push({
opsCode: this.outaddsearchForm.opsName,
diagOrder: "0",
});
this.otopsName.forEach((i) => {
this.opsList.push({
opsCode: i,
diagOrder: "1",
});
});
} else if (this.outaddsearchForm.opsName) {
this.opsList.push({
opsCode: this.outaddsearchForm.opsName,
diagOrder: "0",
});
} else if (this.otopsName.length > 0) {
this.otopsName.forEach((i) => {
this.opsList.push({
opsCode: i,
diagOrder: "1",
});
});
}
this.addgetlist();
},
//获取列表数据
addgetlist() {
http.post(`/medical/post/GetCorePercentsByAssemble`, {
a14: this.ageinput ? this.ageinput : "0", // 年龄
a16: this.ageinput2 ? this.ageinput2 : "0", // 年龄不足一周岁(天)
a12C: this.sexvalue, // 性别
icuTime: this.icuinput ? this.icuinput : "0", // icu总时长(分钟)
b34C: this.leavevalue, // 离院方式
diagList: this.diagList, // 诊断集合
opsList: this.opsList, // 手术集合
})
.then((data) => {
this.addCorePercents = data;
if (this.addCorePercents.length == 0) {
this.addnolistShow = true;
} else {
this.addnolistShow = false;
}
// for (var i = 0; i < this.addCorePercents.length; i++) {
// initEcharts(categoryChart11("药占比", this.addCorePercents[i].drugPercent, "#2CABE3"), `indexChart11${i}`);
// initEcharts(categoryChart11("耗材占比", this.addCorePercents[i].materialsPercent, "#71D875"), `indexChart11two${i}`);
// initEcharts(categoryChart11("检查占比", this.addCorePercents[i].inspectPercent, "#F35E77"), `indexChart11tree${i}`);
// initEcharts(categoryChart11("检验占比", this.addCorePercents[i].testPercent, "#FFB321"), `indexChart11fore${i}`);
// initEcharts(categoryChart11("其他", this.addCorePercents[i].otherPercent, "#C05EF3"), `indexChart11file${i}`);
// (this.diagList = []), (this.opsList = []);
// }
})
.catch((error) => {});
},
//清空输入框的值时触发
addclear() {
this.addCorePercents = [];
this.addnodataShow = true;
},
//关闭弹层前的回调
closeDialog() {
this.addrecordEnrollmentShow = false;
this.outaddsearchForm = {
diagName: "",
opsName: "",
};
(this.otdiagName = []), (this.otopsName = []), this.addclear();
},
//获取诊断数据
remoteMethod(query) {
if (query) {
http.post(`/medical/get/GetDiagOpss?diagName=${query}&type=${1}`, {})
.then((data) => {
this.zdoptions = data;
})
.catch((error) => {});
} else {
this.zdoptions = [];
}
},
//获取其他诊断数据
otremoteMethod(query) {
if (query) {
http.post(`/medical/get/GetDiagOpss?diagName=${query}&type=${1}`, {})
.then((data) => {
this.otzdoptions = data;
})
.catch((error) => {});
} else {
this.zdoptions = [];
}
},
//获取主手术,其他手术的数据
ssremoteMethod(query) {
if (query) {
http.post(`/medical/get/GetDiagOpss?diagName=${query}&type=${2}`, {})
.then((data) => {
this.ssoptions = data;
})
.catch((error) => {});
} else {
this.zdoptions = [];
}
},
//获取其他手术的数据
otssremoteMethod(query) {
if (query) {
http.post(`/medical/get/GetDiagOpss?diagName=${query}&type=${2}`, {})
.then((data) => {
this.otssoptions = data;
})
.catch((error) => {});
} else {
this.zdoptions = [];
}
},
////
decimal,
topage() {
http.get(`/medical/get/JumpHisRules?id=${this.$route.query.id}`, {})
......@@ -449,7 +801,7 @@ export default {
if (this.tableData1 != []) {
eowclick(this.tableData1[0]);
//默认高亮第一行
nextTick(() => {
this.$nextTick(() => {
this.$refs.monthlyPlanTable.setCurrentRow(this.tableData1[0]);
});
}
......@@ -503,6 +855,7 @@ export default {
loadingInstance2.close();
});
},
//疾病查询
//点击获取中间的表格数据
getruleId(ruleId, ind) {
......@@ -593,7 +946,7 @@ export default {
},
};
</script>
<style lang="scss" scoped>
<style lang="scss">
@import "../styles/mixin.scss";
@import "../styles/media/components/outpatientDetails.scss";
......@@ -1461,5 +1814,492 @@ export default {
}
}
}
.fullscreen {
.el-dialog.is-fullscreen {
.el-dialog__body {
height: 91%;
}
}
}
.outaddrecordEnrollment {
height: calc(100% - 50px);
background-color: white;
padding: 20px;
overflow: hidden;
position: relative;
&_search {
// margin-bottom: 20px;
height: 15%;
margin-bottom: 10px;
display: flex;
flex-direction: column;
justify-content: space-between;
&_div1 {
color: #abafb3;
display: flex;
font-size: 12px;
align-items: center;
margin-bottom: 10px;
&_span1 {
width: 50px;
display: flex;
align-items: center;
justify-content: flex-end;
}
&_inp1 {
width: 400px;
}
&_span2 {
width: 70px;
display: flex;
justify-content: flex-end;
}
&_inp2 {
width: 500px;
}
&_span3 {
width: 80px;
display: flex;
justify-content: flex-end;
}
&_inp3 {
width: 100px;
}
&_span4 {
width: 80px;
display: flex;
justify-content: flex-end;
}
&_inp4 {
width: 150px;
}
&_span5 {
margin-left: 290px;
display: flex;
justify-content: flex-end;
}
}
&_div2 {
display: flex;
font-size: 12px;
align-items: center;
color: #abafb3;
margin-bottom: 10px;
&_span1 {
width: 50px;
display: flex;
align-items: center;
justify-content: flex-end;
}
&_inp1 {
width: 400px;
}
&_span2 {
width: 70px;
display: flex;
justify-content: flex-end;
}
&_inp2 {
width: 500px;
}
&_span3 {
width: 80px;
display: flex;
justify-content: flex-end;
}
&_inp3 {
width: 100px;
}
&_span4 {
width: 80px;
display: flex;
justify-content: flex-end;
}
&_inp4 {
width: 150px;
}
}
&_div3 {
color: #abafb3;
display: flex;
font-size: 12px;
&_span1 {
width: 50px;
display: flex;
align-items: center;
justify-content: flex-end;
}
}
}
&_centent {
background-color: #f1f5f8;
height: 75%;
overflow-y: auto;
&_totalnum {
height: 151px;
background-color: #fff;
margin: 12px;
display: flex;
align-items: center;
justify-content: space-around;
&_left {
flex: 1;
width: 50%;
height: 132px;
background-color: rgba(44, 171, 227, 0.08);
margin: 0 15px;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
&_text1 {
width: 100%;
height: 30%;
display: flex;
margin-top: 5px;
margin-bottom: 10px;
justify-content: space-between;
span {
height: 100%;
width: 50%;
margin: 5px 10px;
background-color: #fff;
display: flex;
justify-content: start;
align-items: center;
font-size: 14px;
padding-left: 10px;
font-family: PingFang SC;
font-weight: 300;
color: #6a707e;
}
}
&_text2 {
width: 100%;
height: 30%;
display: flex;
justify-content: space-between;
span {
height: 100%;
width: 50%;
margin: 5px 10px;
background-color: #fff;
display: flex;
justify-content: start;
align-items: center;
font-size: 14px;
padding-left: 10px;
font-family: PingFang SC;
font-weight: 300;
color: #6a707e;
}
}
&_text3 {
margin-bottom: 10px;
width: 100%;
height: 30%;
margin-top: 10px;
display: flex;
justify-content: space-between;
span {
height: 100%;
width: 50%;
margin: 5px 10px;
background-color: #fff;
display: flex;
justify-content: start;
align-items: center;
font-size: 14px;
padding-left: 10px;
font-family: PingFang SC;
font-weight: 300;
color: #6a707e;
}
}
&_radios {
width: 3%;
height: 30%;
display: flex;
justify-content: center;
align-items: center;
}
&_text {
width: 97%;
height: 100%;
display: flex;
flex-direction: column;
justify-content: center;
&_msg1 {
height: 40%;
box-sizing: content-box;
border: 10px solid rgba(44, 171, 227, 0.08);
border-bottom: 5px solid rgba(44, 171, 227, 0.08);
border-top: 5px solid rgba(44, 171, 227, 0.08);
margin-bottom: 5px;
// margin-top: 5px;
display: flex;
&_text11 {
width: 25%;
height: 100%;
display: flex;
flex-direction: column;
justify-content: center;
span {
height: 100%;
width: 85%;
// margin:5px 5px;
display: flex;
justify-content: start;
align-items: center;
font-size: 14px;
padding-left: 10px;
font-family: PingFang SC;
font-weight: 300;
color: #6a707e;
}
}
&_text22 {
width: 25%;
height: 100%;
display: flex;
flex-direction: column;
justify-content: center;
span {
height: 100%;
width: 85%;
// margin:5px 5px;
display: flex;
justify-content: start;
align-items: center;
font-size: 14px;
padding-left: 10px;
font-family: PingFang SC;
font-weight: 300;
color: #6a707e;
}
}
&_text33 {
width: 25%;
height: 100%;
display: flex;
flex-direction: column;
justify-content: center;
span {
height: 100%;
width: 85%;
// margin:5px 5px;
display: flex;
justify-content: start;
align-items: center;
font-size: 14px;
padding-left: 10px;
font-family: PingFang SC;
font-weight: 300;
color: #6a707e;
}
}
&_text44 {
width: 25%;
height: 100%;
display: flex;
flex-direction: column;
justify-content: center;
span {
height: 100%;
width: 85%;
// margin:5px 5px;
display: flex;
justify-content: start;
align-items: flex-start;
font-size: 14px;
padding-left: 10px;
font-family: PingFang SC;
font-weight: 300;
color: #6a707e;
}
}
}
&_msg2 {
background-color: rgba(44, 171, 227, 0.08);
display: flex;
flex-direction: column;
height: 40%;
justify-content: center;
// padding-top: 10px;
&_text3 {
// margin-bottom: 10px;
width: 100%;
height: 83%;
display: flex;
justify-content: space-between;
span {
display: block;
height: 100%;
width: 50%;
margin: 0px 10px;
background-color: #fff;
display: flex;
justify-content: start;
align-items: center;
font-size: 14px;
padding-left: 10px;
font-family: PingFang SC;
font-weight: 300;
color: #6a707e;
}
}
&_text5 {
margin-top: 10px;
margin-bottom: 10px;
width: 100%;
height: 45%;
display: flex;
justify-content: space-between;
span {
height: 100%;
width: 50%;
margin: 0px 10px;
background-color: #fff;
display: flex;
justify-content: start;
align-items: center;
font-size: 14px;
padding-left: 10px;
font-family: PingFang SC;
font-weight: 300;
color: #6a707e;
}
}
}
}
}
&_right {
width: 100%;
height: 30%;
display: flex;
justify-content: space-around;
&_text1 {
width: 19%;
display: flex;
justify-content: center;
align-items: center;
margin-left: 3%;
&_span1 {
color: #2cabe3;
font-family: PingFang SC;
font-weight: 400;
font-size: 14px;
}
&_echar1 {
width: 50%;
height: 88px;
margin-left: -30px;
}
}
&_text2 {
width: 19%;
display: flex;
justify-content: center;
align-items: center;
&_span2 {
color: #71d875;
font-family: PingFang SC;
font-weight: 400;
font-size: 14px;
}
&_echar2 {
width: 50%;
height: 88px;
margin-left: -30px;
}
}
&_text3 {
width: 19%;
display: flex;
justify-content: center;
align-items: center;
&_span3 {
color: #f35e77;
font-family: PingFang SC;
font-weight: 400;
font-size: 14px;
}
&_echar3 {
width: 50%;
height: 85px;
margin-left: -30px;
}
}
&_text4 {
width: 19%;
display: flex;
justify-content: center;
align-items: center;
&_span4 {
color: #ffb321;
font-family: PingFang SC;
font-weight: 400;
font-size: 14px;
}
&_echar4 {
width: 50%;
height: 88px;
margin-left: -30px;
}
}
&_text5 {
width: 19%;
display: flex;
justify-content: center;
align-items: center;
&_span5 {
color: #c05ef3;
font-family: PingFang SC;
font-weight: 400;
font-size: 14px;
}
&_echar5 {
width: 50%;
height: 88px;
margin-left: -30px;
}
}
}
}
// 没有数据
&_nodata {
width: 100%;
height: 100%;
display: flex;
flex-direction: column;
justify-content: center;
align-content: center;
text-align: center;
&_img {
display: flex;
justify-content: center;
align-content: center;
text-align: center;
img {
width: 115px;
height: 102px;
}
}
&_text {
font-size: 18px;
font-family: PingFang SC;
font-weight: 400;
color: #abafb3;
}
}
}
}
}
</style>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment