Commit fcf46bf7 by 唐玉峰

.

parent 7a3c0d2f
...@@ -14,6 +14,7 @@ ...@@ -14,6 +14,7 @@
"element-ui": "^2.15.6", "element-ui": "^2.15.6",
"jquery": "^3.6.0", "jquery": "^3.6.0",
"js-cookie": "^3.0.1", "js-cookie": "^3.0.1",
"sortablejs": "^1.15.2",
"vue": "^2.6.11" "vue": "^2.6.11"
}, },
"devDependencies": { "devDependencies": {
...@@ -28,10 +29,10 @@ ...@@ -28,10 +29,10 @@
"sass": "^1.18.0", "sass": "^1.18.0",
"sass-loader": "^7.1.0", "sass-loader": "^7.1.0",
"sessionstorage": "^0.1.0", "sessionstorage": "^0.1.0",
"uuid": "^3.4.0",
"vue-router": "^3.3.2", "vue-router": "^3.3.2",
"vue-template-compiler": "^2.6.11", "vue-template-compiler": "^2.6.11",
"vuex": "^3.4.0", "vuex": "^3.4.0"
"uuid": "^3.4.0"
}, },
"eslintConfig": { "eslintConfig": {
"root": true, "root": true,
......
<template>
<div class="diagList">
<div class="left">
<div class="text-right mar-bottom-10">
<el-button type="primary" size="mini" slot="append" icon="el-icon-search" @click="search">查询</el-button>
</div>
<div class="font-14 color-999">
<div class="mar-bottom-10">
<div class="flex-between-center">
<div><span class="color-FF4">*</span> <span class="">主诊断:</span></div>
<i @click="addotdiagName" class="cursor color-245 font-14 el-icon-circle-plus-outline">其他诊断</i>
</div>
<div id="list">
<template v-for="(ele, index) in searchForm.otdiagName">
<div :key="index" class="w100">
<div class="font-12 width-90 mar-top-10" v-if="index != 0 && index == 1">其他诊断:</div>
<div class="flex-between-center w100">
<el-select
class="mar-top-5 w90 mar-right-5"
filterable
remote
v-model="searchForm.otdiagName[index]"
reserve-keyword
:placeholder="index == 0 ? '请输入主诊断' : '请输入其他诊断'"
:remote-method="remoteMethod"
size="mini"
clearable
>
<el-option v-for="item in zdoptions" :key="item.name" :label="item.name" :value="item.name" />
</el-select>
<div v-if="searchForm.otdiagName.length != 1" class="flex-between-center">
<i @click.stop="dell(index)" class="cursor color-F54 mar-right-5 font-14 el-icon-remove-outline"></i>
<i class="cursor color-245 font-14 el-icon-sort"></i>
</div>
</div>
</div>
</template>
</div>
</div>
<div class="mar-bottom-10">
<div class="flex-between-center">
<div><span class="">主手术:</span></div>
<i @click="addotopsName" class="cursor color-245 font-14 el-icon-circle-plus-outline">其他手术</i>
</div>
<div id="list1">
<template v-for="(el, i) in searchForm.otopsName">
<div :key="i" class="w100">
<div class="flex-between-center mar-top-10" v-if="i != 0 && i == 1">
<span class="font-12">其他手术:</span>
</div>
<div class="flex-between-center w100">
<el-select
class="mar-top-5 w90 mar-right-5"
v-model="searchForm.otopsName[i]"
filterable
remote
:collapse-tags="true"
:collapse-tags-tooltip="true"
reserve-keyword
:placeholder="i == 0 ? '请输入主手术' : '请输入其他手术'"
:remote-method="otssremoteMethod"
size="mini"
clearable
>
<el-option v-for="item in otssoptions" :key="item.name" :label="item.name" :value="item.name" />
</el-select>
<div v-if="searchForm.otopsName.length != 1" class="flex-between-center">
<i @click.stop="del(i)" class="cursor color-F54 mar-right-5 font-14 el-icon-remove-outline"></i>
<i class="cursor color-245 font-14 el-icon-sort"></i>
</div>
</div>
</div>
</template>
</div>
</div>
<div class="mar-bottom-10">
<span class="width-80">年龄:</span>
<div class="mar-top-5 flex-between-center">
<el-input v-model.trim="searchForm.a14" class="flex-1" size="mini" clearable placeholder="请输入年龄" />
<span class="mar-left-5"></span>
</div>
</div>
<div class="mar-bottom-10">
<span class="width-80">ICU总时长:</span>
<div class="mar-top-5 flex-between-center">
<el-input v-model.trim="searchForm.icuTime" class="flex-1" size="mini" clearable placeholder="请输入ICU总时长" />
<span class="mar-left-5">分钟</span>
</div>
</div>
<div class="mar-bottom-10">
<span class="width-80">医保类型:</span>
<el-select class="mar-top-5 w100" v-model="searchForm.a46C" placeholder="医保类型" size="mini" clearable>
<el-option label="城镇职工" value="城镇职工" />
<el-option label="城乡居民" value="城乡居民" />
</el-select>
</div>
<div class="mar-bottom-10">
<span class="width-80">新生儿年龄:</span>
<div class="mar-top-5 flex-between-center">
<el-input v-model.trim="searchForm.a16" class="flex-1" size="mini" clearable placeholder="请输入年龄" />
<span class="mar-left-5"></span>
</div>
</div>
<div class="mar-bottom-10">
<span class="width-80">新生儿体重:</span>
<div class="mar-top-5 flex-between-center">
<el-input v-model.trim="searchForm.birthWeight" class="flex-1" size="mini" clearable placeholder="请输入" />
<span class="mar-left-5">g</span>
</div>
</div>
<div class="mar-bottom-10">
<span class="width-60">性别:</span>
<el-radio-group v-model="searchForm.a12C" size="mini" class="mar-right-10">
<el-radio label="0" class="mar-right-5">未知</el-radio>
<el-radio label="1" class="mar-right-5"></el-radio>
<el-radio label="2" class="mar-right-5"></el-radio>
</el-radio-group>
</div>
<div class="mar-bottom-10">
<span class="width-80">离院方式:</span>
<el-select v-model="searchForm.b34C" placeholder="请选择离院方式" size="mini" class="w100 mar-top-5">
<el-option v-for="item in leaveoptions" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</div>
<div class="mar-bottom-10">
<span class="width-80">总费用:</span>
<el-input v-model.trim="searchForm.d01" class="w100 mar-top-5" size="mini" clearable placeholder="请输入总费用" />
</div>
</div>
</div>
<div class="right">
<div class="outaddrecordEnrollment_centent">
<div class="outaddrecordEnrollment_centent_totalnum" v-for="(item, index) in addCorePercents" :key="index">
<div class="outsetgrouping_centent_totalnum_left_yxrz" v-if="item.isShow">
<!-- <div class="dw" style="height: 24%"><img src="../assets/img/t29.png" alt="" /> 优先入组</div> -->
</div>
<div style="flex: 1">
<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支付费用:{{ decimal(item.actualfee) }}</span>
<span>分组类型:{{ item.disNature }}</span>
</div>
</div>
<div class="diagList_fenqu" v-if="item.lowMagnification != 0 && item.highMagnification != 0">
<div class="diagList_fenqu_di">
<div class="diagList_fenqu_di_bb">
<div class="diagList_fenqu_di_bb_div1">
<span
class="diagList_fenqu_di_bb_div1_num"
:style="{
marginLeft: item.totalwidth - 1 + '%',
color: item.totalcolor,
}"
>{{ decimal(item.totalFee) }}</span
>
<span
class="diagList_fenqu_di_bb_div1_he"
:style="{
marginLeft: item.totalwidth + '%',
backgroundColor: item.totalcolor,
}"
></span>
</div>
<div class="diagList_fenqu_di_bb_div2" style="height: 100%">
<span class="diagList_fenqu_di_bb_div2_span1" :style="{ width: item.lowwidth + '%' }"
><span class="diagList_fenqu_di_bb_div2_span1_t1" :title="'低倍率区域:&lt;=' + Math.round(item.lowMagnification)"
>低倍率区域:&lt;={{ Math.round(item.lowMagnification) }}</span
></span
>
<span class="diagList_fenqu_di_bb_div2_span2" :style="{ width: item.contentwidth + '%' }"
><span
class="diagList_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="diagList_fenqu_di_bb_div2_span3" :style="{ width: item.heightwidth + '%' }"
><span class="diagList_fenqu_di_bb_div2_span3_t3" :title="'高倍率区域:>=' + Math.round(item.highMagnification)"
>高倍率区域:>={{ Math.round(item.highMagnification) }}</span
></span
>
</div>
</div>
</div>
</div>
<div v-if="item.analysis" class="mar-0-15 pad-5-10" style="background-color: rgba(44, 171, 227, 0.08)">
<div style="background-color: rgba(44, 171, 227, 0.08)" class="pad-5-10">提示:</div>
<div class="bg-FFF w100 pad-10">
{{ item.analysis }}
</div>
</div>
<div class="mar-0-15 pad-5-10" style="background-color: rgba(44, 171, 227, 0.08)">
<div style="background-color: rgba(44, 171, 227, 0.08)" class="pad-5-10">MCC:</div>
<div class="bg-FFF w100 pad-10">
{{ item.mccDatas && item.mccDatas.length ? item.mccDatas.join(";") : "--" }}
</div>
</div>
<div class="mar-0-15 pad-5-10" style="background-color: rgba(44, 171, 227, 0.08)">
<div style="background-color: rgba(44, 171, 227, 0.08)" class="pad-5-10">CC:</div>
<div class="bg-FFF w100 pad-10">
{{ item.ccDatas && item.ccDatas.length ? item.ccDatas.join(";") : "--" }}
</div>
</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>
</div>
</template>
<script>
import Sortable from "sortablejs";
import http from "../utils/http";
import { initEcharts, categoryChart, categoryChart11 } from "../utils/echarts";
import { decimal } from "../utils/decimal";
import { Message } from "element-ui";
import { setItem, getItem } from "../utils/auth";
import { Loading } from "element-ui";
export default {
name: "diagList",
components: {},
props: ["code", "isshow"],
data() {
return {
zdoptions: [], //诊断
otzdoptions: [], //诊断
ssoptions: [], //主手术
otssoptions: [], //其他手术
searchForm: {
a14: "0",
a16: "0",
birthWeight: "0",
a12C: "0",
icuTime: "0",
b34C: "1",
opsList: [], //手术
otopsName: [""],
otdiagName: [""],
diagList: [], //诊断
a46C: "城乡居民",
d01: 0,
},
//离院方式选择器
leaveoptions: [
{
label: "医嘱离院",
value: "1",
},
{
label: "医嘱转院",
value: "2",
},
{
label: "医嘱转社区卫生服务机构/乡镇卫生院",
value: "3",
},
{
label: "非医嘱离院",
value: "4",
},
{
label: "死亡",
value: "5",
},
{
label: "其他",
value: "9",
},
],
addCorePercents: [],
addnolistShow: true, //没有搜索数据的时候显示
};
},
//监听属性 类似于data概念
computed: {},
//监控data中的数据变化
watch: {
isshow: {
handler() {
if (this.isshow) {
if (this.code) {
Object.assign(this.searchForm, this.code);
this.searchForm.otdiagName = [];
this.searchForm.otopsName = [];
this.searchForm.otdiagName = this.searchForm.diagList.length ? this.searchForm.diagList.map((item) => item.diagCode) : [""];
this.searchForm.otopsName = this.searchForm.opsList.length ? this.searchForm.opsList.map((item) => item.opsCode) : [""];
this.getlist();
}
}
},
},
},
created() {},
mounted() {
if (this.code) {
Object.assign(this.searchForm, this.code);
this.searchForm.otdiagName = [];
this.searchForm.otopsName = [];
this.searchForm.otdiagName = this.searchForm.diagList.length ? this.searchForm.diagList.map((item) => item.diagCode) : [""];
this.searchForm.otopsName = this.searchForm.opsList.length ? this.searchForm.opsList.map((item) => item.opsCode) : [""];
this.getlist();
}
this.rowDrop();
this.rowDrop1();
},
beforeMount() {}, //生命周期 - 挂载之前
destroyed() {}, //生命周期 - 销毁完成
activated() {}, //如果页面有keep-alive缓存功能,这个函数会触发
//方法集合
methods: {
decimal,
//添加诊断
addotdiagName() {
let arr = this.searchForm.otdiagName.filter((item) => item);
if (!arr.length) {
Message.warning("请先输入主诊断");
return;
}
let v = _.last(this.searchForm.otdiagName);
if (!v) {
Message.warning("请输入诊断");
return;
}
this.searchForm.otdiagName.push("");
},
dell(i) {
this.searchForm.otdiagName.splice(i, 1);
},
//手术
addotopsName() {
let v = _.last(this.searchForm.otopsName);
if (!v) {
this.$message.warning("请输入手术");
return;
}
this.searchForm.otopsName.push("");
},
del(i) {
this.searchForm.otopsName.splice(i, 1);
},
//查询
search() {
let arr = this.searchForm.otdiagName.filter((item) => item);
if (!arr.length) {
Message.warning("请输入主诊断");
return;
}
this.searchForm.otdiagName
.filter((item) => item)
.map((item, i) => {
this.searchForm.diagList.push({
diagCode: item,
diagOrder: i == 0 ? "0" : "1",
});
});
this.searchForm.otopsName
.filter((item) => item)
.map((item, i) => {
this.searchForm.opsList.push({
opsCode: item,
opsOrder: i == 0 ? "0" : "1",
});
});
this.getlist();
},
//获取列表数据
getlist() {
http.post(`/medical/post/GetCorePercentsByAssemble`, this.searchForm)
.then((data) => {
if (data && data.length == 0) {
Message.warning({
message: `此诊断作为主诊断无法入组!`,
type: "warning",
});
}
this.addCorePercents = data;
this.addCorePercents.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.addCorePercents.length == 0) {
this.addnolistShow = true;
} else {
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 = []);
// }
this.searchForm.diagList = [];
this.searchForm.opsList = [];
})
.catch((error) => {});
},
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.ssoptions = [];
}
},
//获取其他手术的数据
otssremoteMethod(query) {
if (query) {
http.post(`/medical/get/GetDiagOpss?diagName=${query}&type=${2}`, {})
.then((data) => {
this.otssoptions = data;
})
.catch((error) => {});
} else {
this.otssoptions = [];
}
},
// 行拖拽
rowDrop() {
let _this = this;
const el = document.getElementById("list");
Sortable.create(el, {
animation: 100,
delay: 0,
onEnd({ newIndex, oldIndex }) {
if (newIndex === oldIndex) return;
if (_this.searchForm) {
_this.searchForm.otdiagName.splice(newIndex, 0, _this.searchForm.otdiagName.splice(oldIndex, 1)[0]);
var newArray = _this.searchForm.otdiagName.slice(0);
_this.searchForm.otdiagName = [];
_this.$nextTick(function () {
_this.searchForm.otdiagName = newArray;
});
}
},
});
},
rowDrop1() {
let _this = this;
const ele = document.getElementById("list1");
Sortable.create(ele, {
animation: 100,
delay: 0,
group: "shared",
onEnd({ newIndex, oldIndex }) {
if (newIndex === oldIndex) return;
if (_this.searchForm) {
_this.searchForm.otopsName.splice(newIndex, 0, _this.searchForm.otopsName.splice(oldIndex, 1)[0]);
var newArray = _this.searchForm.otopsName.slice(0);
_this.searchForm.otopsName = [];
_this.$nextTick(function () {
_this.searchForm.otopsName = newArray;
});
}
},
});
},
},
};
</script>
<style lang="scss" scoped>
.diagList {
width: 100%;
height: 100%;
overflow: hidden;
display: flex;
.left {
width: 250px;
padding: 10px;
height: 100%;
overflow-y: auto;
}
.right {
// width: calc(100% - 250px);
background-color: #f1f5f8;
overflow-y: auto;
flex: 1;
.outaddrecordEnrollment_centent {
background-color: #f1f5f8;
height: 100%;
overflow-y: auto;
&_totalnum {
// height: 151px;
background-color: #fff;
margin: 12px;
padding: 10px;
// display: flex;
// align-items: center;
// justify-content: space-around;
&_left {
// flex: 1;
width: 98%;
height: auto !important;
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: 0;
justify-content: space-between;
span {
height: 100%;
width: 50%;
padding: 5px 0;
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%;
padding: 5px 0;
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 {
width: 100%;
height: 30%;
margin-top: 5px;
margin-bottom: 5px;
display: flex;
justify-content: space-between;
span {
height: 100%;
width: 50%;
padding: 5px 0;
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;
}
}
}
.diagList_fenqu {
height: 35%;
margin-bottom: 10;
}
}
&_fenqu {
width: 100%;
height: 80px !important;
margin-bottom: 10px;
background-color: #fff;
display: flex;
justify-content: center;
align-items: center;
&_di {
width: 100%;
height: 85%;
background-color: white;
display: flex;
justify-content: center;
&_bb {
width: 98%;
height: 85%;
margin: 0 5px;
background-color: white;
display: flex;
flex-direction: column;
justify-content: space-around;
padding-top: 5px;
&_div1 {
width: 100%;
height: 18%;
// display: flex;
// flex-direction: column;
// align-items: flex-start;
&_num {
display: flex;
font-size: 12px;
font-family: PingFang SC;
}
&_he {
display: block;
width: 2px;
height: 10px;
}
}
&_div2 {
width: 100%;
height: 64%;
display: flex;
justify-content: center;
align-items: center;
&_span1 {
display: block;
// width: 33%;
height: 50%;
border-radius: 2px;
color: white;
font-size: 12px;
background-color: #e9c622;
display: flex;
align-items: center;
justify-content: center;
font-family: PingFang SC;
&_t1 {
width: 90%;
height: 100%;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
text-align: center;
padding-top: 10px;
}
&_t1:hover {
width: 90%;
}
}
&_span2 {
display: block;
// width: 33%;
height: 50%;
border-radius: 2px;
color: white;
font-size: 12px;
background-color: #22d016;
display: flex;
align-items: center;
justify-content: center;
font-family: PingFang SC;
&_t2 {
width: 90%;
height: 100%;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
text-align: center;
padding-top: 10px;
}
&_t2:hover {
width: 90%;
}
}
&_span3 {
display: block;
// width: 33%;
height: 50%;
border-radius: 2px;
color: white;
font-size: 12px;
background-color: #ff7e00;
display: flex;
align-items: center;
justify-content: center;
font-family: PingFang SC;
&_t3 {
width: 90%;
height: 100%;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
text-align: center;
padding-top: 10px;
}
&_t3:hover {
width: 90%;
}
}
}
&_div3 {
width: 100%;
height: 18%;
display: flex;
&_span1 {
display: flex;
height: 100%;
justify-content: start;
font-size: 12px;
font-family: PingFang SC;
color: #abafb3;
}
&_span2 {
display: flex;
height: 100%;
font-size: 12px;
font-family: PingFang SC;
color: #abafb3;
justify-content: start;
}
&_span3 {
display: flex;
height: 100%;
font-family: PingFang SC;
font-size: 12px;
color: #abafb3;
justify-content: space-between;
}
// &_span4 {
// display: flex;
// width: 25%;
// height: 100%;
// font-family: PingFang SC;
// padding-left: 383px;
// font-size: 12px;
// color: #abafb3;
// }
}
}
}
}
}
</style>
...@@ -9,28 +9,11 @@ ...@@ -9,28 +9,11 @@
<!-- 智能分组 --> <!-- 智能分组 -->
<div class="outsetgrouping" id="setGroupingbox"> <div class="outsetgrouping" id="setGroupingbox">
<div class="outsetgrouping_button" style="margin-top: 15px"> <div class="outsetgrouping_button" style="margin-top: 15px">
<el-button <el-button class="outsetgrouping_button_Searchbtn" style="margin-left: 10px" size="mini" type="primary" @click="topage1">病案质控</el-button>
class="outsetgrouping_button_Searchbtn" <el-button class="outsetgrouping_button_Searchbtn" type="primary" size="mini" @click="toPage">
style="margin-left: 10px"
size="mini"
type="primary"
@click="topage1"
>病案质控</el-button
>
<el-button
class="outsetgrouping_button_Searchbtn"
type="primary"
size="mini"
@click="toPage"
>
<span class="s2">费用监控</span> <span class="s2">费用监控</span>
</el-button> </el-button>
<el-button <el-button class="outsetgrouping_button_Searchbtn" type="primary" size="mini" @click="gosear">
class="outsetgrouping_button_Searchbtn"
type="primary"
size="mini"
@click="gosear"
>
<span class="s2">疾病分组查询</span> <span class="s2">疾病分组查询</span>
</el-button> </el-button>
<!-- <el-button class="outsetgrouping_button_Submitbtn" size="mini" type="primary" @click="submit"> <!-- <el-button class="outsetgrouping_button_Submitbtn" size="mini" type="primary" @click="submit">
...@@ -41,53 +24,39 @@ ...@@ -41,53 +24,39 @@
<div class="outsetgrouping_top"> <div class="outsetgrouping_top">
<div class="outsetgrouping_top_message"> <div class="outsetgrouping_top_message">
<div class="outsetgrouping_top_message_left"> <div class="outsetgrouping_top_message_left">
<span class="outsetgrouping_top_message_left_tu1" <span class="outsetgrouping_top_message_left_tu1"><img src="../assets/img/peo.png" alt="" /> </span>
><img src="../assets/img/peo.png" alt="" />
</span>
<div class="outsetgrouping_top_message_left_t1"> <div class="outsetgrouping_top_message_left_t1">
住院号:<span>{{ casehisObj ? casehisObj.a48 : '' }}</span> 住院号:<span>{{ casehisObj ? casehisObj.a48 : "" }}</span>
</div> </div>
</div> </div>
<div class="outsetgrouping_top_message_left"> <div class="outsetgrouping_top_message_left">
<span class="outsetgrouping_top_message_left_tu1" <span class="outsetgrouping_top_message_left_tu1"><img src="../assets/img/peo.png" alt="" /> </span>
><img src="../assets/img/peo.png" alt="" />
</span>
<div class="outsetgrouping_top_message_left_t1"> <div class="outsetgrouping_top_message_left_t1">
姓名:<span>{{ casehisObj ? casehisObj.a11 : '' }}</span> 姓名:<span>{{ casehisObj ? casehisObj.a11 : "" }}</span>
</div> </div>
</div> </div>
<div class="outsetgrouping_top_message_centert"> <div class="outsetgrouping_top_message_centert">
<span class="outsetgrouping_top_message_centert_tu2" <span class="outsetgrouping_top_message_centert_tu2"><img src="../assets/img/ka.png" alt="" /></span>
><img src="../assets/img/ka.png" alt=""
/></span>
<div class="outsetgrouping_top_message_centert_t2"> <div class="outsetgrouping_top_message_centert_t2">
住院次数:<span>{{ casehisObj ? casehisObj.a49 : '' }}</span> 住院次数:<span>{{ casehisObj ? casehisObj.a49 : "" }}</span>
</div> </div>
</div> </div>
<div class="outsetgrouping_top_message_centert"> <div class="outsetgrouping_top_message_centert">
<span class="outsetgrouping_top_message_centert_tu2" <span class="outsetgrouping_top_message_centert_tu2"><img src="../assets/img/ka.png" alt="" /></span>
><img src="../assets/img/ka.png" alt=""
/></span>
<div class="outsetgrouping_top_message_centert_t2"> <div class="outsetgrouping_top_message_centert_t2">
实际住院天数:<span>{{ casehisObj ? casehisObj.b20 : '' }}</span> 实际住院天数:<span>{{ casehisObj ? casehisObj.b20 : "" }}</span>
</div> </div>
</div> </div>
<div class="outsetgrouping_top_message_right"> <div class="outsetgrouping_top_message_right">
<span class="outsetgrouping_top_message_right_tu3" <span class="outsetgrouping_top_message_right_tu3"><img src="../assets/img/qian.png" alt="" /></span>
><img src="../assets/img/qian.png" alt=""
/></span>
<div class="outsetgrouping_top_message_right_t3"> <div class="outsetgrouping_top_message_right_t3">
医疗付费方式:<span>{{ casehisObj ? casehisObj.a46C : '' }}</span> 医疗付费方式:<span>{{ casehisObj ? casehisObj.a46C : "" }}</span>
</div> </div>
</div> </div>
<div class="outsetgrouping_top_message_blow"> <div class="outsetgrouping_top_message_blow">
<span class="outsetgrouping_top_message_blow_tu7" <span class="outsetgrouping_top_message_blow_tu7"><img src="../assets/img/daoru.png" alt="" /></span>
><img src="../assets/img/daoru.png" alt=""
/></span>
<div class="outsetgrouping_top_message_blow_t4"> <div class="outsetgrouping_top_message_blow_t4">
分组类型:<span>{{ 分组类型:<span>{{ casehisObj ? casehisObj.drgs.disNature : "" }}</span>
casehisObj ? casehisObj.drgs.disNature : ''
}}</span>
</div> </div>
</div> </div>
</div> </div>
...@@ -95,19 +64,15 @@ ...@@ -95,19 +64,15 @@
<div class="outsetgrouping_top2"> <div class="outsetgrouping_top2">
<div class="outsetgrouping_top2_message"> <div class="outsetgrouping_top2_message">
<div class="outsetgrouping_top2_message_left"> <div class="outsetgrouping_top2_message_left">
<span class="outsetgrouping_top2_message_left_tu4" <span class="outsetgrouping_top2_message_left_tu4"><img src="../assets/img/bianma.png" alt="" /> </span>
><img src="../assets/img/bianma.png" alt="" />
</span>
<div class="outsetgrouping_top2_message_left_t1"> <div class="outsetgrouping_top2_message_left_t1">
分组编码:<span>{{ casehisObj ? casehisObj.drgs.code : '' }}</span> 分组编码:<span>{{ casehisObj ? casehisObj.drgs.code : "" }}</span>
</div> </div>
</div> </div>
<div class="outsetgrouping_top2_message_right"> <div class="outsetgrouping_top2_message_right">
<span class="outsetgrouping_top2_message_centert_tu5" <span class="outsetgrouping_top2_message_centert_tu5"><img src="../assets/img/daoru.png" alt="" /></span>
><img src="../assets/img/daoru.png" alt=""
/></span>
<div class="outsetgrouping_top2_message_centert_t2"> <div class="outsetgrouping_top2_message_centert_t2">
分组名称:<span>{{ casehisObj ? casehisObj.drgs.name : '' }}</span> 分组名称:<span>{{ casehisObj ? casehisObj.drgs.name : "" }}</span>
</div> </div>
</div> </div>
<!-- <div class="outsetgrouping_top2_message_right"> <!-- <div class="outsetgrouping_top2_message_right">
...@@ -136,22 +101,13 @@ ...@@ -136,22 +101,13 @@
<span class="outsetgrouping_title_span">智能疾病分组</span> <span class="outsetgrouping_title_span">智能疾病分组</span>
</div> </div>
<div class="outsetgrouping_centent"> <div class="outsetgrouping_centent">
<div <div class="outsetgrouping_centent_totalnum" v-for="(item, index) in CorePercents" :key="index">
class="outsetgrouping_centent_totalnum"
v-for="(item, index) in CorePercents"
:key="index"
>
<div class="outsetgrouping_centent_totalnum_left"> <div class="outsetgrouping_centent_totalnum_left">
<div class="outsetgrouping_centent_totalnum_left_radios"> <div class="outsetgrouping_centent_totalnum_left_radios">
<!-- <input type="radio" name="radios" v-model="radio" /> --> <!-- <input type="radio" name="radios" v-model="radio" /> -->
<!-- <input type="radio" name="radios" :value="item.id" @click="radios" /> --> <!-- <input type="radio" name="radios" :value="item.id" @click="radios" /> -->
<el-button <el-button class="outsetgrouping_button_Submitbtn" size="mini" type="primary" @click="submit(item.coreID)">
class="outsetgrouping_button_Submitbtn"
size="mini"
type="primary"
@click="submit(item.coreID)"
>
<span class="iconfont icon-ipr_tijiao"></span> <span class="iconfont icon-ipr_tijiao"></span>
<span class="s2">分组提交</span> <span class="s2">分组提交</span>
</el-button> </el-button>
...@@ -159,27 +115,19 @@ ...@@ -159,27 +115,19 @@
<div class="outsetgrouping_centent_totalnum_left_text"> <div class="outsetgrouping_centent_totalnum_left_text">
<div class="outsetgrouping_centent_totalnum_left_text_msg1"> <div class="outsetgrouping_centent_totalnum_left_text_msg1">
<div <div class="outsetgrouping_centent_totalnum_left_text_msg1_text11">
class="outsetgrouping_centent_totalnum_left_text_msg1_text11"
>
<span> 诊断名称:{{ item.diagMapName }}</span> <span> 诊断名称:{{ item.diagMapName }}</span>
<span>操作名称:{{ item.opsMapName }}</span> <span>操作名称:{{ item.opsMapName }}</span>
</div> </div>
<div <div class="outsetgrouping_centent_totalnum_left_text_msg1_text22">
class="outsetgrouping_centent_totalnum_left_text_msg1_text22"
>
<span> 诊断编码:{{ item.disCode }}</span> <span> 诊断编码:{{ item.disCode }}</span>
<span>操作编码:{{ item.opsCode }}</span> <span>操作编码:{{ item.opsCode }}</span>
</div> </div>
<div <div class="outsetgrouping_centent_totalnum_left_text_msg1_text33">
class="outsetgrouping_centent_totalnum_left_text_msg1_text33"
>
<span> 诊断类型:{{ item.diagOrder }}</span> <span> 诊断类型:{{ item.diagOrder }}</span>
<span>操作类型:{{ item.opsOrder }}</span> <span>操作类型:{{ item.opsOrder }}</span>
</div> </div>
<div <div class="outsetgrouping_centent_totalnum_left_text_msg1_text44">
class="outsetgrouping_centent_totalnum_left_text_msg1_text44"
>
<span> 分组类型:{{ item.disNature }}</span> <span> 分组类型:{{ item.disNature }}</span>
</div> </div>
</div> </div>
...@@ -255,178 +203,30 @@ ...@@ -255,178 +203,30 @@
<div class="outsetgrouping_centent_nodata_text">暂无数据</div> <div class="outsetgrouping_centent_nodata_text">暂无数据</div>
</div> </div>
</div> </div>
<!-- 弹出层 -->
<el-dialog
center
:visible.sync="addrecordEnrollmentShow"
:before-close="closeDialog"
:fullscreen="true"
>
<!-- 病案分组 --> <!-- 病案分组 -->
<div class="outaddrecordEnrollment" id="outaddrecordEnrollment"> <!-- 弹出层 -->
<div class="outaddrecordEnrollment_search"> <el-dialog center :visible.sync="addrecordEnrollmentShow" :before-close="closeDialog" :fullscreen="true">
<div class="outaddrecordEnrollment_search_div1"> <diagList></diagList>
<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 class="one-txt-cut" :title="item.coreName"
>分组名称:{{ item.coreName }}</span
>
<span>病种分值:{{ item.score }}</span>
<span>预计DIP支付费用:{{ decimal(item.actualfee) }}</span>
<span>分组类型:{{ item.disNature }}</span>
</div>
<div class="outaddrecordEnrollment_centent_totalnum_left_text1">
<span>手术操作编码:{{ item.opsCode }}</span
><span class="one-txt-cut" :title="item.opsName"
>手术操作名称:{{ item.opsName }}</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> </el-dialog>
</div> </div>
</template> </template>
<script> <script>
import { decimal } from '../utils/decimal' import { decimal } from "../utils/decimal";
import http from '../utils/http' import http from "../utils/http";
import $ from 'jquery' import $ from "jquery";
import { Message } from 'element-ui' import { Message } from "element-ui";
import { initEcharts, categoryChart, categoryChart11 } from '../utils/echarts' import { initEcharts, categoryChart, categoryChart11 } from "../utils/echarts";
import diagList from "./diagList";
export default { export default {
name: 'outHistorygrouping', name: "outHistorygrouping",
components: { diagList },
data() { data() {
return { return {
abc: '', abc: "",
casehisObj: null, casehisObj: null,
searchForm: { searchForm: {
diagName: '', diagName: "",
opsName: '' opsName: "",
}, },
CorePercents: [], CorePercents: [],
coreID: 0, coreID: 0,
...@@ -443,8 +243,8 @@ export default { ...@@ -443,8 +243,8 @@ export default {
opsMapList: null, //医保手术编码集合 opsMapList: null, //医保手术编码集合
outaddsearchForm: { outaddsearchForm: {
diagName: '', diagName: "",
opsName: '' opsName: "",
}, },
addCorePercents: [], addCorePercents: [],
addnolistShow: true, //没有搜索数据的时候显示 addnolistShow: true, //没有搜索数据的时候显示
...@@ -456,190 +256,181 @@ export default { ...@@ -456,190 +256,181 @@ export default {
// 性别选择器 // 性别选择器
sexoptions: [ sexoptions: [
{ {
label: '未知', label: "未知",
value: '0' value: "0",
}, },
{ {
label: '男', label: "男",
value: '1' value: "1",
}, },
{ {
label: '女', label: "女",
value: '2' value: "2",
} },
], ],
//离院方式选择器 //离院方式选择器
leaveoptions: [ leaveoptions: [
{ {
label: '医嘱离院', label: "医嘱离院",
value: '1' value: "1",
}, },
{ {
label: '医嘱转院', label: "医嘱转院",
value: '2' value: "2",
}, },
{ {
label: '医嘱转社区卫生服务机构/乡镇卫生院', label: "医嘱转社区卫生服务机构/乡镇卫生院",
value: '3' value: "3",
}, },
{ {
label: '非医嘱离院', label: "非医嘱离院",
value: '4' value: "4",
}, },
{ {
label: '死亡', label: "死亡",
value: '5' value: "5",
}, },
{ {
label: '其他', label: "其他",
value: '9' value: "9",
} },
], ],
//性别输入框 //性别输入框
sexvalue: '0', sexvalue: "0",
//年龄 岁 //年龄 岁
ageinput: '0', ageinput: "0",
//年龄 天 //年龄 天
ageinput2: '0', ageinput2: "0",
//icu时长 //icu时长
icuinput: '0', icuinput: "0",
//离院方式 //离院方式
leavevalue: '1', leavevalue: "1",
otdiagName: '', //其他诊断 otdiagName: "", //其他诊断
otopsName: '', //其他手术 otopsName: "", //其他手术
zdoptions: [], //诊断的数据 zdoptions: [], //诊断的数据
otzdoptions: [], //其他诊断数据 otzdoptions: [], //其他诊断数据
ssoptions: [], //主手术 ssoptions: [], //主手术
otssoptions: [], //其他手术 otssoptions: [], //其他手术
diagList: [], //诊断 diagList: [], //诊断
opsList: [] //手术 opsList: [], //手术
} };
}, },
async mounted() { async mounted() {
this.getCaseHis(this.$route.query.id) this.getCaseHis(this.$route.query.id);
}, },
methods: { methods: {
decimal, decimal,
goback() { goback() {
this.$router.go(-1) this.$router.go(-1);
}, },
//疾病查询 //疾病查询
gosear() { gosear() {
this.addrecordEnrollmentShow = true this.addrecordEnrollmentShow = true;
this.outaddsearchForm = { this.outaddsearchForm = {
diagName: this.casehisObj.c03C || '' diagName: this.casehisObj.c03C || "",
} };
this.addsearch() this.addsearch();
}, },
//获取基本数据 //获取基本数据
getCaseHis(code) { getCaseHis(code) {
http http.post(`/medical/Get/casehisData?id=${code}`, {})
.post(`/medical/Get/casehisData?id=${code}`, {})
.then((data) => { .then((data) => {
this.casehisObj = data this.casehisObj = data;
this.diagMapList = data.diagMapList this.diagMapList = data.diagMapList;
this.opsMapList = data.opsMapList this.opsMapList = data.opsMapList;
this.getlist() this.getlist();
}) })
.catch((error) => {}) .catch((error) => {});
}, },
//获取列表数据 //获取列表数据
getlist() { getlist() {
http http.post(`/medical/get/GetCorePercents`, {
.post(`/medical/get/GetCorePercents`, {
Type: 1, Type: 1,
DiagMapList: this.diagMapList, DiagMapList: this.diagMapList,
OpsMapList: this.opsMapList, OpsMapList: this.opsMapList,
id: this.$route.query.id id: this.$route.query.id,
}) })
.then((data) => { .then((data) => {
this.CorePercents = data.list this.CorePercents = data.list;
if (this.CorePercents.length == 0) { if (this.CorePercents.length == 0) {
this.nolistShow = true this.nolistShow = true;
// this.nodataShow = false; // this.nodataShow = false;
} }
}) })
.catch((error) => {}) .catch((error) => {});
}, },
//提交 //提交
submit(coreID) { submit(coreID) {
http http.post(`/medical/Update/casehisById?PatientId=${this.$route.query.id}&coreid=${coreID}`)
.post(
`/medical/Update/casehisById?PatientId=${this.$route.query.id}&coreid=${coreID}`
)
.then((data) => { .then((data) => {
Message.success({ Message.success({
message: `${data.message}`, message: `${data.message}`,
type: 'success' type: "success",
}) });
this.getCaseHis(this.$route.query.id) this.getCaseHis(this.$route.query.id);
}) })
.catch((error) => {}) .catch((error) => {});
}, },
//关闭弹层前的回调 //关闭弹层前的回调
closeDialog() { closeDialog() {
this.addrecordEnrollmentShow = false this.addrecordEnrollmentShow = false;
this.outaddsearchForm = { this.outaddsearchForm = {
diagName: '', diagName: "",
opsName: '' opsName: "",
} };
;(this.otdiagName = []), (this.otopsName = []), this.addclear() (this.otdiagName = []), (this.otopsName = []), this.addclear();
}, },
//清空输入框的值时触发 //清空输入框的值时触发
addclear() { addclear() {
this.addCorePercents = [] this.addCorePercents = [];
this.addnodataShow = true this.addnodataShow = true;
}, },
//获取诊断数据 //获取诊断数据
remoteMethod(query) { remoteMethod(query) {
if (query) { if (query) {
http http.post(`/medical/get/GetDiagOpss?diagName=${query}&type=${1}`, {})
.post(`/medical/get/GetDiagOpss?diagName=${query}&type=${1}`, {})
.then((data) => { .then((data) => {
this.zdoptions = data this.zdoptions = data;
}) })
.catch((error) => {}) .catch((error) => {});
} else { } else {
this.zdoptions = [] this.zdoptions = [];
} }
}, },
//获取其他诊断数据 //获取其他诊断数据
otremoteMethod(query) { otremoteMethod(query) {
if (query) { if (query) {
http http.post(`/medical/get/GetDiagOpss?diagName=${query}&type=${1}`, {})
.post(`/medical/get/GetDiagOpss?diagName=${query}&type=${1}`, {})
.then((data) => { .then((data) => {
this.otzdoptions = data this.otzdoptions = data;
}) })
.catch((error) => {}) .catch((error) => {});
} else { } else {
this.zdoptions = [] this.zdoptions = [];
} }
}, },
//获取主手术,其他手术的数据 //获取主手术,其他手术的数据
ssremoteMethod(query) { ssremoteMethod(query) {
if (query) { if (query) {
http http.post(`/medical/get/GetDiagOpss?diagName=${query}&type=${2}`, {})
.post(`/medical/get/GetDiagOpss?diagName=${query}&type=${2}`, {})
.then((data) => { .then((data) => {
this.ssoptions = data this.ssoptions = data;
}) })
.catch((error) => {}) .catch((error) => {});
} else { } else {
this.zdoptions = [] this.zdoptions = [];
} }
}, },
//获取其他手术的数据 //获取其他手术的数据
otssremoteMethod(query) { otssremoteMethod(query) {
if (query) { if (query) {
http http.post(`/medical/get/GetDiagOpss?diagName=${query}&type=${2}`, {})
.post(`/medical/get/GetDiagOpss?diagName=${query}&type=${2}`, {})
.then((data) => { .then((data) => {
this.otssoptions = data this.otssoptions = data;
}) })
.catch((error) => {}) .catch((error) => {});
} else { } else {
this.zdoptions = [] this.zdoptions = [];
} }
}, },
//查询 //查询
...@@ -648,36 +439,35 @@ export default { ...@@ -648,36 +439,35 @@ export default {
if (this.outaddsearchForm.diagName) { if (this.outaddsearchForm.diagName) {
this.diagList.push({ this.diagList.push({
diagCode: this.outaddsearchForm.diagName, diagCode: this.outaddsearchForm.diagName,
diagOrder: '0' diagOrder: "0",
}) });
} }
if (!this.outaddsearchForm.diagName) { if (!this.outaddsearchForm.diagName) {
Message.warning('请输入主诊断') Message.warning("请输入主诊断");
return return;
} }
this.addgetlist() this.addgetlist();
}, },
//获取列表数据 //获取列表数据
addgetlist() { addgetlist() {
http http.post(`/medical/post/GetCorePercentsByAssemble`, {
.post(`/medical/post/GetCorePercentsByAssemble`, { a14: this.ageinput ? this.ageinput : "0", // 年龄
a14: this.ageinput ? this.ageinput : '0', // 年龄 a16: this.ageinput2 ? this.ageinput2 : "0", // 年龄不足一周岁(天)
a16: this.ageinput2 ? this.ageinput2 : '0', // 年龄不足一周岁(天)
a12C: this.sexvalue, // 性别 a12C: this.sexvalue, // 性别
icuTime: this.icuinput ? this.icuinput : '0', // icu总时长(分钟) icuTime: this.icuinput ? this.icuinput : "0", // icu总时长(分钟)
b34C: this.leavevalue, // 离院方式 b34C: this.leavevalue, // 离院方式
diagList: this.diagList, // 诊断集合 diagList: this.diagList, // 诊断集合
opsList: this.opsList // 手术集合 opsList: this.opsList, // 手术集合
}) })
.then((data) => { .then((data) => {
this.addCorePercents = data this.addCorePercents = data;
if (this.addCorePercents.length == 0) { if (this.addCorePercents.length == 0) {
this.addnolistShow = true this.addnolistShow = true;
} else { } else {
this.addnolistShow = false this.addnolistShow = false;
} }
this.diagList = [] this.diagList = [];
this.opsList = [] this.opsList = [];
// this.totalCount = data.totalCount; // this.totalCount = data.totalCount;
// for (var i = 0; i < this.addCorePercents.length; i++) { // for (var i = 0; i < this.addCorePercents.length; i++) {
// this.$nextTick(() => { // this.$nextTick(() => {
...@@ -690,18 +480,16 @@ export default { ...@@ -690,18 +480,16 @@ export default {
// (this.diagList = []), (this.opsList = []); // (this.diagList = []), (this.opsList = []);
// } // }
}) })
.catch((error) => {}) .catch((error) => {});
}, },
radios() { radios() {
let _this = this let _this = this;
$('input[type=radio][name=radios]').on('change', function () { $("input[type=radio][name=radios]").on("change", function () {
_this.radio = this.value _this.radio = this.value;
_this.coreID = _this.CorePercents.find( _this.coreID = _this.CorePercents.find((item) => item.id == this.value).coreID;
(item) => item.id == this.value console.log(_this.coreID);
).coreID console.log(this.value);
console.log(_this.coreID) });
console.log(this.value)
})
// console.log(e); // console.log(e);
// this.radio = e.target.value; // this.radio = e.target.value;
// this.coreID = this.CorePercents.find((item) => item.id == e.target.value).coreID; // this.coreID = this.CorePercents.find((item) => item.id == e.target.value).coreID;
...@@ -709,29 +497,27 @@ export default { ...@@ -709,29 +497,27 @@ export default {
}, },
toPage() { toPage() {
http http.get(`/medical/get/JumpHisMAInfo?id=${this.$route.query.id}`, {})
.get(`/medical/get/JumpHisMAInfo?id=${this.$route.query.id}`, {})
.then((data) => { .then((data) => {
window.open(data.message) window.open(data.message);
}) })
.catch((error) => { .catch((error) => {
console.log(error) console.log(error);
}) });
}, },
topage1() { topage1() {
http http.get(`/medical/get/JumpHisRules?id=${this.$route.query.id}`, {})
.get(`/medical/get/JumpHisRules?id=${this.$route.query.id}`, {})
.then((data) => { .then((data) => {
window.open(data.message) window.open(data.message);
}) })
.catch((error) => {}) .catch((error) => {});
} },
} },
} };
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
@import '../styles/mixin.scss'; @import "../styles/mixin.scss";
@import '../styles/outHistorygrouping.scss'; @import "../styles/outHistorygrouping.scss";
.outsetgrouping { .outsetgrouping {
height: 900px; height: 900px;
background-color: white; background-color: white;
...@@ -1960,7 +1746,7 @@ export default { ...@@ -1960,7 +1746,7 @@ export default {
} }
} }
} }
input[type='radio' i] { input[type="radio" i] {
width: 16px; width: 16px;
height: 16px; height: 16px;
} }
......
This source diff could not be displayed because it is too large. You can view the blob instead.
...@@ -20,7 +20,7 @@ module.exports = { ...@@ -20,7 +20,7 @@ module.exports = {
port: 8066, //测试端口 port: 8066, //测试端口
proxy: { proxy: {
"/api": { "/api": {
target: "http://192.168.18.166:8173/", //dip测试站点 target: "http://192.168.18.166:8033/", //dip测试站点
changeOrigin: true, changeOrigin: true,
pathRewrite: { pathRewrite: {
"^/": "/", "^/": "/",
......
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