Commit d1297fd6 by 唐玉峰

.

parent 199bb2cb
...@@ -11,23 +11,37 @@ ...@@ -11,23 +11,37 @@
<div class="outpatientDetails_top"> <div class="outpatientDetails_top">
<div class="outpatientDetails_top_div1"> <div class="outpatientDetails_top_div1">
<span class="span1">患者信息</span> <span class="span1">患者信息</span>
<div>
<el-button size="mini" type="primary" class="outpatientDetails_top_div1_button" @click="topage"> 病案质控</el-button>
<el-button class="outpatientDetails_top_div1_button" type="primary" size="mini" @click="getControl">医嘱质控</el-button> <el-button class="outpatientDetails_top_div1_button" type="primary" size="mini" @click="getControl">医嘱质控</el-button>
<!-- <el-button size="mini" type="primary">医嘱质控</el-button> --> </div>
</div> </div>
<div class="outpatientDetails_top_message"> <div class="outpatientDetails_top_message">
<div class="outpatientDetails_top_message_left" style="width: 12%">
<span class="outpatientDetails_top_message_left_tu1"> <img src="../assets/img/peo.png" alt="" /></span>
<div class="outpatientDetails_top_message_left_t1">
住院号:<span>{{ HistoryInfo.name }}</span>
</div>
</div>
<div class="outpatientDetails_top_message_left"> <div class="outpatientDetails_top_message_left">
<span class="outpatientDetails_top_message_left_tu1"> <img src="../assets/img/peo.png" alt="" /></span> <span class="outpatientDetails_top_message_left_tu1"> <img src="../assets/img/peo.png" alt="" /></span>
<div class="outpatientDetails_top_message_left_t1"> <div class="outpatientDetails_top_message_left_t1">
住院号:<span>{{ HistoryInfo.id }}</span> 住院号:<span>{{ HistoryInfo.id }}</span>
</div> </div>
</div> </div>
<div class="outpatientDetails_top_message_centert"> <div class="outpatientDetails_top_message_centert" style="width: 12%">
<span class="outpatientDetails_top_message_centert_tu2"><img src="../assets/img/ka.png" alt="" /></span> <span class="outpatientDetails_top_message_centert_tu2"><img src="../assets/img/ka.png" alt="" /></span>
<div class="outpatientDetails_top_message_centert_t2"> <div class="outpatientDetails_top_message_centert_t2">
住院次数:<span>{{ HistoryInfo.a49 }}</span> 住院次数:<span>{{ HistoryInfo.a49 }}</span>
</div> </div>
</div> </div>
<div class="outpatientDetails_top_message_centert" style="width: 14%">
<span class="outpatientDetails_top_message_centert_tu2"><img src="../assets/img/ka.png" alt="" /></span>
<div class="outpatientDetails_top_message_centert_t2">
实际住院天数:<span>{{ HistoryInfo.b20 }}</span>
</div>
</div>
<div class="outpatientDetails_top_message_right"> <div class="outpatientDetails_top_message_right">
<span class="outpatientDetails_top_message_right_tu3"><img src="../assets/img/qian.png" alt="" /></span> <span class="outpatientDetails_top_message_right_tu3"><img src="../assets/img/qian.png" alt="" /></span>
<div class="outpatientDetails_top_message_right_t3"> <div class="outpatientDetails_top_message_right_t3">
...@@ -306,290 +320,276 @@ import { Loading } from "element-ui"; ...@@ -306,290 +320,276 @@ import { Loading } from "element-ui";
export default { export default {
name: "outpatientDetails", name: "outpatientDetails",
setup() { data() {
const monthlyPlanTable = ref(); return {
//表格颜色 tableData1: [],
const tableRowClassName = ({ row }) => { btnoptions: [
{
value: 0,
title: "全部",
},
{
value: 1,
title: "医保",
},
{
value: 2,
title: "自费",
},
],
btnspanind: 0, //按个按钮的ind
btnvalue: 0, //三个按钮没人高亮全部
Lefttype: [], //左侧表格的数据
HistoryInfo: {
name: "",
healthyID: "",
paymentType: "",
disNature: "",
doctorName: "",
rw: "",
totalFee: "",
avgFee: "",
days: "",
profitLoss: "",
},
checkindex: 0, // 初始化第一个栏块高亮
goods: [], //左侧费用类型
tableListHead: [
{ cloumn: "开单日期", name: "chargeTime" },
{
cloumn: "项目编码",
name: "iteM_CODE",
},
{
cloumn: "项目名称",
name: "iteM_NAME",
},
{
cloumn: "单价",
name: "unitprice",
},
{
cloumn: "数量",
name: "quantity",
},
{
cloumn: "金额",
name: "fee",
},
{
cloumn: "支付类型",
name: "carD_TYPE",
},
],
tableData: [],
options: [], //异常问题数据
medInsNum: 0, //医保数
notdrugsNum: 0, //非药品
drugsNum: 0, //药品
diseaseNum: 0, //疾病
dipid: "",
typeCountDatas: [], //异常数据
showCountDatas: true, //异常问题类型是否显示
showbottom: true, //异常问题详情是否显示
heightnum: "", //最大值
lowwidth: "", //低倍率宽度
heightwidth: "", //高倍率宽度
contentwidth: "", //正常倍率宽度
totalwidth: "", //总费用宽度
totalcolor: "", //总费用颜色
lowMagnification: 0, //低倍率值
highMagnification: 0, //高倍率值
bottomheight: "60%", //底部高度
span1Ind: -1,
liInd: -1,
loadingOption1: {
// 加载loading
fullscreen: true,
text: "正在加载...",
spinner: "el-icon-loading",
background: "rgba(0, 0, 0, 0.5)",
},
};
},
mounted() {
this.GetProjectRulesData();
this.getHistoryInfo();
this.getlefttable();
},
methods: {
decimal,
topage() {
http.post(`/medical/get/JumpHisRules?id=${this.$route.query.id}`, {})
.then((data) => {
console.log(data);
})
.catch((error) => {});
},
tableRowClassName({ row }) {
if (row.rowIndex % 2 == 0) { if (row.rowIndex % 2 == 0) {
return "isverifyStyle"; return "isverifyStyle";
} else { } else {
return ""; return "";
} }
}; },
//当某一个行被点击时 //当某一个行被点击时
const eowclick = (row) => { eowclick(row) {
if (state.tableData1 != []) { if (this.tableData1 != []) {
getInpatFeesByREGCODE(row.types); this.getInpatFeesByREGCODE(row.types);
state.Lefttype = row.types; this.Lefttype = row.types;
} }
}; },
//获取左侧表格数据 //获取左侧表格数据
const getlefttable = () => { getlefttable() {
http.post(`/medical/Post/getHisStaChargeType?code=${route.value.query.id}`, {}) http.post(`/medical/Post/getHisStaChargeType?code=${this.$route.query.id}`, {})
.then((data) => { .then((data) => {
state.tableData1 = data; this.tableData1 = data;
if (state.tableData1 != []) { if (this.tableData1 != []) {
eowclick(state.tableData1[0]); this.eowclick(this.tableData1[0]);
//默认高亮第一行 //默认高亮第一行
nextTick(() => { this.$nextTick(() => {
monthlyPlanTable.value.setCurrentRow(state.tableData1[0]); this.$refs.monthlyPlanTable.setCurrentRow(this.tableData1[0]);
}); });
} }
//中间的表格默认展示第一条数据 //中间的表格默认展示第一条数据
}) })
.catch((error) => {}); .catch((error) => {});
}; },
//当行展开和关闭是触发 //当行展开和关闭是触发
const changeRowClick = (row) => { changeRowClick(row) {
console.log("row-chang", row); console.log("row-chang", row);
}; },
//异常问题接口 显示全部异常信息 //异常问题接口 显示全部异常信息
const GetProjectRulesData = () => { GetProjectRulesData() {
http.post(`/medical/get/GetPRHisData?&code=${route.value.query.id}`, {}) http.post(`/medical/get/GetPRHisData?&code=${this.$route.query.id}`, {})
.then((data) => { .then((data) => {
state.options = data.projectRules; this.options = data.projectRules;
state.typeCountDatas = data.typeCountDatas; this.typeCountDatas = data.typeCountDatas;
if (data.typeCountDatas == null) { if (data.typeCountDatas == null) {
state.showCountDatas = false; this.showCountDatas = false;
} }
if (data.projectRules == null) { if (data.projectRules == null) {
state.showbottom = false; this.showbottom = false;
} }
}) })
.catch((error) => {}); .catch((error) => {});
}; },
//点击异常分类 显示异常信息 //点击异常分类 显示异常信息
const gettype = (name, ind) => { gettype(name, ind) {
console.log("name", name); console.log("name", name);
state.showCountDatas = true; this.showCountDatas = true;
state.showbottom = true; this.showbottom = true;
var loadingInstance2 = Loading.service(loadingOption1); var loadingInstance2 = Loading.service(this.loadingOption1);
http.post(`/medical/get/GetPRHisData?&code=${route.value.query.id}&projectType=${name}`, {}) http.post(`/medical/get/GetPRHisData?&code=${this.$route.query.id}&projectType=${name}`, {})
.then((data) => { .then((data) => {
state.liInd = -1; this.liInd = -1;
state.span1Ind = ind; this.span1Ind = ind;
state.options = data.projectRules; this.options = data.projectRules;
loadingInstance2.close(); loadingInstance2.close();
// state.typeCountDatas = data.typeCountDatas; // this.typeCountDatas = data.typeCountDatas;
// if (data.typeCountDatas == null) { // if (data.typeCountDatas == null) {
// state.showCountDatas = false; // this.showCountDatas = false;
// } // }
if (data.projectRules == null) { if (data.projectRules == null) {
state.showbottom = false; this.showbottom = false;
} }
}) })
.catch((error) => { .catch((error) => {
loadingInstance2.close(); loadingInstance2.close();
}); });
}; },
//点击获取中间的表格数据 //点击获取中间的表格数据
const getruleId = (ruleId, ind) => { getruleId(ruleId, ind) {
http.post(`/medical/Post/GetiFHisByItemCode?code=${route.value.query.id}&ruleId=${ruleId}`, {}) http.post(`/medical/Post/GetiFHisByItemCode?code=${this.$route.query.id}&ruleId=${ruleId}`, {})
.then((data) => { .then((data) => {
state.liInd = ind; this.liInd = ind;
state.tableData = data; this.tableData = data;
}) })
.catch((error) => {}); .catch((error) => {});
}; },
//医嘱质控 //医嘱质控
const getControl = () => { getControl() {
http.post(`/global/post/SetCaseProjectRuleHis?id=${route.value.query.id}`) http.post(`/global/post/SetCaseProjectRuleHis?id=${this.$route.query.id}`)
.then((data) => { .then((data) => {
Message.success(data.message); Message.success(data.message);
}) })
.catch((error) => {}); .catch((error) => {});
}; },
//获取患者信息数据 //获取患者信息数据
const getHistoryInfo = () => { getHistoryInfo() {
http.post(`/medical/Get/getHisInfo?&code=${route.value.query.id}`, {}) http.post(`/medical/Get/getHisInfo?&code=${this.$route.query.id}`, {})
.then((data) => { .then((data) => {
state.HistoryInfo = data; this.HistoryInfo = data;
state.dipid = data.id; this.dipid = data.id;
state.goods = data.inpat_FeeDatas; this.goods = data.inpat_FeeDatas;
state.lowMagnification = data.lowMagnification; this.lowMagnification = data.lowMagnification;
state.highMagnification = data.highMagnification; this.highMagnification = data.highMagnification;
// 高倍率>总费用 高倍率金额+高倍率金额*30% // 高倍率>总费用 高倍率金额+高倍率金额*30%
if (data.highMagnification > data.totalFee) { if (data.highMagnification > data.totalFee) {
state.heightnum = data.highMagnification + data.highMagnification * 0.3; this.heightnum = data.highMagnification + data.highMagnification * 0.3;
console.log("state.heightnum", state.heightnum); console.log("this.heightnum", this.heightnum);
} else if (data.highMagnification < data.totalFee) { } else if (data.highMagnification < data.totalFee) {
// 高倍率<总费用 患者总费用的金额+患者总费用的金额*30% // 高倍率<总费用 患者总费用的金额+患者总费用的金额*30%
state.heightnum = data.totalFee + data.totalFee * 0.3; this.heightnum = data.totalFee + data.totalFee * 0.3;
console.log("state.heightnum", state.heightnum); console.log("this.heightnum", this.heightnum);
} }
// 低倍率宽度 // 低倍率宽度
state.lowwidth = Math.round((Math.round(data.lowMagnification) / Math.round(state.heightnum)) * 100); this.lowwidth = Math.round((Math.round(data.lowMagnification) / Math.round(this.heightnum)) * 100);
// 高倍率宽度 // 高倍率宽度
state.heightwidth = Math.round(((Math.round(state.heightnum) - Math.round(data.highMagnification)) / Math.round(state.heightnum)) * 100); this.heightwidth = Math.round(((Math.round(this.heightnum) - Math.round(data.highMagnification)) / Math.round(this.heightnum)) * 100);
// 正常倍率宽度 // 正常倍率宽度
state.contentwidth = 100 - (state.lowwidth + state.heightwidth); this.contentwidth = 100 - (this.lowwidth + this.heightwidth);
//总费用宽度 //总费用宽度
state.totalwidth = Math.round((Math.round(data.totalFee) / Math.round(state.heightnum)) * 100); this.totalwidth = Math.round((Math.round(data.totalFee) / Math.round(this.heightnum)) * 100);
// 判断总费用显示的颜色 // 判断总费用显示的颜色
if (data.totalFee < data.lowMagnification) { if (data.totalFee < data.lowMagnification) {
state.totalcolor = "#e9c622"; this.totalcolor = "#e9c622";
} else if (data.totalFee > data.lowMagnification && data.totalFee < data.highMagnification) { } else if (data.totalFee > data.lowMagnification && data.totalFee < data.highMagnification) {
state.totalcolor = "#22d016"; this.totalcolor = "#22d016";
} else if (data.totalFee > data.highMagnification) { } else if (data.totalFee > data.highMagnification) {
state.totalcolor = "#ff7e00"; this.totalcolor = "#ff7e00";
} }
if (data.lowMagnification == 0 || data.highMagnification == 0) { if (data.lowMagnification == 0 || data.highMagnification == 0) {
state.bottomheight = "80%"; this.bottomheight = "80%";
} else if (data.lowMagnification != 0) { } else if (data.lowMagnification != 0) {
state.bottomheight = "68%"; this.bottomheight = "68%";
} }
}) })
.catch((error) => {}); .catch((error) => {});
}; },
//点击中间三个按钮 //点击中间三个按钮
const treebtn = (value, ind) => { treebtn(value, ind) {
state.btnspanind = ind; this.btnspanind = ind;
state.btnvalue = value; this.btnvalue = value;
getInpatFeesByREGCODE(state.Lefttype); this.getInpatFeesByREGCODE(this.Lefttype);
}; },
// loading效果
const loadingOption1 = {
// 加载loading
fullscreen: true,
text: "正在加载...",
spinner: "el-icon-loading",
background: "rgba(0, 0, 0, 0.5)",
};
//费用分类接口 //费用分类接口
const getInpatFeesByREGCODE = (types) => { getInpatFeesByREGCODE(types) {
var loadingInstance1 = Loading.service(loadingOption1); var loadingInstance1 = Loading.service(this.loadingOption1);
http.post(`/medical/Get/getIFHisByREGCODE?&code=${route.value.query.id}&state=${state.btnvalue}`, types) http.post(`/medical/Get/getIFHisByREGCODE?&code=${this.$route.query.id}&state=${this.btnvalue}`, types)
.then((data) => { .then((data) => {
state.tableData = data; this.tableData = data;
loadingInstance1.close(); loadingInstance1.close();
}) })
.catch((error) => { .catch((error) => {
loadingInstance1.close(); loadingInstance1.close();
}); });
};
const scrollToFoods = (index) => {
// state.checkindex = index;
};
let state = reactive({
tableData1: [],
btnoptions: [
{
value: 0,
title: "全部",
},
{
value: 1,
title: "医保",
},
{
value: 2,
title: "自费",
},
],
btnspanind: 0, //按个按钮的ind
btnvalue: 0, //三个按钮没人高亮全部
Lefttype: [], //左侧表格的数据
HistoryInfo: {
name: "",
healthyID: "",
paymentType: "",
disNature: "",
doctorName: "",
rw: "",
totalFee: "",
avgFee: "",
days: "",
profitLoss: "",
},
checkindex: 0, // 初始化第一个栏块高亮
goods: [], //左侧费用类型
tableListHead: [
{ cloumn: "开单日期", name: "chargeTime" },
{
cloumn: "项目编码",
name: "iteM_CODE",
},
{
cloumn: "项目名称",
name: "iteM_NAME",
},
{
cloumn: "单价",
name: "unitprice",
}, },
{
cloumn: "数量",
name: "quantity",
},
{
cloumn: "金额",
name: "fee",
},
{
cloumn: "支付类型",
name: "carD_TYPE",
},
],
tableData: [],
options: [], //异常问题数据
medInsNum: 0, //医保数
notdrugsNum: 0, //非药品
drugsNum: 0, //药品
diseaseNum: 0, //疾病
dipid: "",
typeCountDatas: [], //异常数据
showCountDatas: true, //异常问题类型是否显示
showbottom: true, //异常问题详情是否显示
heightnum: "", //最大值
lowwidth: "", //低倍率宽度
heightwidth: "", //高倍率宽度
contentwidth: "", //正常倍率宽度
totalwidth: "", //总费用宽度
totalcolor: "", //总费用颜色
lowMagnification: 0, //低倍率值
highMagnification: 0, //高倍率值
bottomheight: "60%", //底部高度
span1Ind: -1,
liInd: -1,
});
//表格自适应高度
const route = useRoute();
onMounted(() => { scrollToFoods(index) {
GetProjectRulesData(); // this.checkindex = index;
getHistoryInfo(); },
getlefttable();
});
return {
...toRefs(state),
tableRowClassName,
scrollToFoods,
getHistoryInfo,
getInpatFeesByREGCODE,
decimal,
// tableCot,
GetProjectRulesData,
getControl,
gettype,
getruleId,
eowclick,
changeRowClick,
getlefttable,
monthlyPlanTable,
treebtn,
};
}, },
}; };
</script> </script>
......
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