Commit 8f72a377 by 唐玉峰

添加 是否皮试列 临床

parent ebd7fc90
......@@ -421,6 +421,8 @@
<el-table-column prop="diaG_CODE" label="疾病编码"></el-table-column>
<el-table-column prop="diaG_ORDERNAME" label="诊断类型"> </el-table-column>
<el-table-column prop="diaG_ILLNESS" label="入院病情"></el-table-column>
<el-table-column prop="coreName" label="病组编码"> </el-table-column>
<el-table-column prop="coreScore" label=" 分值"></el-table-column>
</el-table>
</el-row>
<el-row>
......
......@@ -117,6 +117,18 @@
<span v-if="scope.row.ischeck == 1 && scope.row.orderType">{{ scope.row.tickTime }}</span>
</template>
</el-table-column>
<el-table-column show-overflow-tooltip property="isSkin" label="是否皮试" width="110">
<template #default="scope">
<template v-if="scope.row.orderType == '药疗' && scope.row.isnew">
<template v-if="scope.row.ischeck == 1 && scope.row.orderType && scope.row.isSkinCheck == 1">
<el-select size="mini" v-model="scope.row.isSkin">
<el-option v-for="item in isSkinoptions" :key="item.label" :label="item.label" :value="item.value"> </el-option>
</el-select>
</template>
<!-- <div v-else>{{ scope.row.isSkin == 1 ? "是" : "否" }}</div> -->
</template>
</template>
</el-table-column>
<el-table-column show-overflow-tooltip property="orderType" label="类型" width="50">
<template #default="scope">
<div v-if="scope.row.orderType == '药疗'">
......@@ -175,7 +187,7 @@
</el-table-column>
<el-table-column show-overflow-tooltip property="specifications" label="规格说明" width="80" />
<el-table-column show-overflow-tooltip property="dosage" label="药品剂型" width="70" />
<el-table-column show-overflow-tooltip property="isAntibiotic" label="抗生素" width="85">
<el-table-column show-overflow-tooltip property="isAntibiotic" label="抗生素" width="110">
<template #default="scope">
<el-select v-if="scope.row.ischeck == 1 && scope.row.orderType" size="mini" v-model="scope.row.isAntibiotic">
<el-option v-for="item in chargeTypeoptions" :key="item.label" :label="item.label" :value="item.label"> </el-option>
......@@ -186,9 +198,36 @@
<el-table-column show-overflow-tooltip property="medicalPurpose" label="用药目的" width="135">
<template #default="scope">
<template v-if="scope.row.ischeck == 1 && scope.row.orderType">
<template v-if="scope.row.isAntibiotic == '是' && scope.row.orderType == '药疗'">
<el-form :model="scope.row" label-width="15px" label-position="left" ref="medicalPurpose" class="demo-ruleForm">
<el-form-item
prop="medicalPurpose"
:rules="[
{
required:
scope.row.isSkin == 1 && scope.row.orderType == '药疗'
? true
: scope.row.isAntibiotic == '是' && scope.row.orderType == '药疗'
? true
: false,
message: '请选择',
},
]"
>
<template #label> <span></span></template>
<el-select size="mini" v-model="scope.row.medicalPurpose">
<el-option v-for="item in medicalPurposeoptions" :key="item.id" :label="item.describe" :value="item.describe">
</el-option>
</el-select>
</el-form-item>
</el-form>
<!-- <template v-if="scope.row.isAntibiotic == '是' && scope.row.orderType == '药疗'">
<el-form :model="scope.row" label-width="15px" label-position="left" ref="medicalPurpose" class="demo-ruleForm">
<el-form-item prop="medicalPurpose" :rules="[{ required: true, message: '请选择' }]">
<el-form-item
prop="medicalPurpose"
:rules="[
{ required: scope.row.isAntibiotic == '是' && scope.row.orderType == '药疗' ? true : false, message: '请选择' },
]"
>
<template #label> <span></span></template>
<el-select size="mini" v-model="scope.row.medicalPurpose">
<el-option v-for="item in medicalPurposeoptions" :key="item.id" :label="item.describe" :value="item.describe">
......@@ -202,7 +241,7 @@
<el-option v-for="item in medicalPurposeoptions" :key="item.id" :label="item.describe" :value="item.describe">
</el-option>
</el-select>
</template>
</template> -->
</template>
<span v-else>{{ scope.row.medicalPurpose }}</span>
</template>
......@@ -210,9 +249,21 @@
<el-table-column prop="medicUseQuantity" label="用量" width="85">
<template #default="scope">
<template v-if="scope.row.ischeck == 1 && scope.row.orderType">
<template v-if="scope.row.orderType == '药疗'">
<el-form :model="scope.row" label-width="15px" label-position="left" ref="medicUseQuantity" class="demo-ruleForm">
<el-form-item
prop="medicUseQuantity"
:rules="[{ required: scope.row.orderType == '药疗' && scope.row.isSkin != 1 ? true : false, message: '请填写' }]"
>
<template #label> <span></span></template>
<el-input v-model="scope.row.medicUseQuantity" @input="setIput(scope.row, $event)" size="mini"></el-input>
</el-form-item>
</el-form>
<!-- <template v-if="scope.row.orderType == '药疗'">
<el-form :model="scope.row" label-width="15px" label-position="left" ref="medicUseQuantity" class="demo-ruleForm">
<el-form-item prop="medicUseQuantity" :rules="[{ required: true, message: '请填写' }]">
<el-form-item
prop="medicUseQuantity"
:rules="[{ required: scope.row.orderType == '药疗' && scope.row.isSkin == '是' ? true : false, message: '请填写' }]"
>
<template #label> <span></span></template>
<el-input v-model="scope.row.medicUseQuantity" @input="setIput(scope.row, $event)" size="mini"></el-input>
</el-form-item>
......@@ -220,7 +271,7 @@
</template>
<template v-else>
<el-input v-model="scope.row.medicUseQuantity" @input="setIput(scope.row, $event)" size="mini"></el-input>
</template>
</template> -->
</template>
<span v-else>{{ scope.row.medicUseQuantity }}</span>
</template>
......@@ -229,7 +280,19 @@
<el-table-column show-overflow-tooltip property="medicUseMode" label="途径" width="120">
<template #default="scope">
<template v-if="scope.row.ischeck == 1 && scope.row.orderType">
<template v-if="scope.row.orderType == '药疗'">
<el-form :model="scope.row" label-width="15px" label-position="left" ref="medicUseMode" class="demo-ruleForm">
<el-form-item
prop="medicUseMode"
:rules="[{ required: scope.row.orderType == '药疗' && scope.row.isSkin != 1 ? true : false, message: '请选择' }]"
>
<template #label> <span></span></template>
<el-select size="mini" v-model="scope.row.medicUseMode" filterable remote :filter-method="remoteMethod">
<el-option v-for="item in medicUseModeoptions" :key="item.id" :label="item.describe" :value="item.describe">
</el-option>
</el-select>
</el-form-item>
</el-form>
<!-- <template v-if="scope.row.orderType == '药疗'">
<el-form :model="scope.row" label-width="15px" label-position="left" ref="medicUseMode" class="demo-ruleForm">
<el-form-item prop="medicUseMode" :rules="[{ required: true, message: '请选择' }]">
<template #label> <span></span></template>
......@@ -245,7 +308,7 @@
<el-option v-for="item in medicUseModeoptions" :key="item.id" :label="item.describe" :value="item.describe">
</el-option>
</el-select>
</template>
</template> -->
</template>
<span v-else>{{ scope.row.medicUseMode }}</span>
</template>
......@@ -253,7 +316,19 @@
<el-table-column show-overflow-tooltip property="medicUsePlan" label="频率" width="130">
<template #default="scope">
<template v-if="scope.row.ischeck == 1 && scope.row.orderType">
<template v-if="scope.row.orderType == '药疗'">
<el-form :model="scope.row" label-width="15px" label-position="left" ref="medicUsePlan" class="demo-ruleForm">
<el-form-item
prop="medicUsePlan"
:rules="[{ required: scope.row.orderType == '药疗' && scope.row.isSkin != 1 ? true : false, message: '请选择' }]"
>
<template #label> <span></span></template>
<el-select size="mini" v-model="scope.row.medicUsePlan" @change="setIput(scope.row, $event)">
<el-option v-for="item in medicUsePlanoptions" :key="item.id" :label="item.describe" :value="item.describe">
</el-option>
</el-select>
</el-form-item>
</el-form>
<!-- <template v-if="scope.row.orderType == '药疗'">
<el-form :model="scope.row" label-width="15px" label-position="left" ref="medicUsePlan" class="demo-ruleForm">
<el-form-item prop="medicUsePlan" :rules="[{ required: true, message: '请选择' }]">
<template #label> <span></span></template>
......@@ -269,7 +344,7 @@
<el-option v-for="item in medicUsePlanoptions" :key="item.id" :label="item.describe" :value="item.describe">
</el-option>
</el-select>
</template>
</template> -->
</template>
<span v-else>{{ scope.row.medicUsePlan }}</span>
</template>
......@@ -451,7 +526,16 @@ export default {
reasonoptions: [], //变异原因
crid: null,
chickid: [], //选中的id
isSkinoptions: [
{
label: "是",
value: 1,
},
{
label: "否",
value: 2,
},
],
chargeTypeoptions: [
{
label: "是",
......@@ -601,6 +685,8 @@ export default {
useDay: 1,
packagingnum: 1,
split_num: 1,
isSkin: undefined,
isSkinCheck: r.isSkinCheck,
};
this.toggleSelection(newData, true);
this.cout = cout + 1;
......@@ -669,6 +755,7 @@ export default {
item.useDay = row.useDay;
item.packagingnum = row.packagingnum;
item.split_num = row.split_num;
item.isSkin = row.isSkin;
}
if (item.children && item.children.length > 0) {
this.pushData(row, item.children);
......
......@@ -6,888 +6,804 @@
* @Description:
-->
<template>
<!-- 查看质控 -->
<div class="outseeQualityControl">
<div class="outseeQualityControl_box">
<div class="outseeQualityControl_box_btn">
<el-button class="outseeQualityControl_box_btn_button" size="mini" type="primary" @click="getSynchronous">同步数据</el-button>
</div>
<div class="outseeQualityControl_box_header">
<div class="outseeQualityControl_box_header_text"></div>
</div>
<div class="outseeQualityControl_box_Content">
<div class="outseeQualityControl_box_Content_left">
<medical-record-homepage
:medicalrecord="medicalrecord"
:clicktitle="clicktitle"
>
</medical-record-homepage>
</div>
<div class="outseeQualityControl_box_Content_right">
<div class="outseeQualityControl_box_Content_right_top">
<!--非编码问题 -->
<div
:class="[
isleftcodeShow
? 'outseeQualityControl_box_Content_right_top_left'
: 'outseeQualityControl_box_Content_right_top_left11',
]"
@click="leftcode"
>
<div class="outseeQualityControl_box_Content_right_top_left_div1">
<img
src="../assets/img/fbm.png"
alt=""
v-show="isleftcodeShow"
/>
<img
src="../assets/img/bm.png"
alt=""
v-show="!isleftcodeShow"
/>
</div>
<div class="outseeQualityControl_box_Content_right_top_left_div2">
<span
:class="[
isleftcodeShow
? 'outseeQualityControl_box_Content_right_top_left_div2_span1'
: 'outseeQualityControl_box_Content_right_top_left_div2_span11',
]"
>{{ fruleCount }}</span
>
<span
:class="[
isleftcodeShow
? 'outseeQualityControl_box_Content_right_top_left_div2_span2'
: 'outseeQualityControl_box_Content_right_top_left_div2_span22',
]"
>非编码问题</span
>
</div>
</div>
<!-- 编码问题 -->
<div
:class="[
isleftcodeShow
? 'outseeQualityControl_box_Content_right_top_right'
: 'outseeQualityControl_box_Content_right_top_right11',
]"
@click="rightcode"
>
<div
class="outseeQualityControl_box_Content_right_top_right_div1"
>
<img
src="../assets/img/fbm.png"
alt=""
v-show="!isleftcodeShow"
/>
<img
src="../assets/img/bm.png"
alt=""
v-show="isleftcodeShow"
/>
</div>
<div
class="outseeQualityControl_box_Content_right_top_right_div2"
>
<span
:class="[
isleftcodeShow
? 'outseeQualityControl_box_Content_right_top_right_div2_span1'
: 'outseeQualityControl_box_Content_right_top_right_div2_span11',
]"
>{{ ruleCount }}</span
>
<span
:class="[
isleftcodeShow
? 'outseeQualityControl_box_Content_right_top_right_div2_span2'
: 'outseeQualityControl_box_Content_right_top_right_div2_span22',
]"
>编码问题</span
>
</div>
<!-- 查看质控 -->
<div class="outseeQualityControl">
<div class="outseeQualityControl_box">
<div class="outseeQualityControl_box_btn">
<el-button class="outseeQualityControl_box_btn_button" size="mini" type="primary" @click="getSynchronous">同步数据</el-button>
</div>
</div>
<div class="outseeQualityControl_box_Content_right_center">
<div
class="outseeQualityControl_box_Content_right_center_line"
v-show="isleftcodeShow"
></div>
<div
class="outseeQualityControl_box_Content_right_center_line2"
v-show="!isleftcodeShow"
></div>
</div>
<div class="outseeQualityControl_box_Content_right_bottom">
<!-- <div class="outseeQualityControl_box_Content_right_bottom_title">患者基本信息</div> -->
<div
class="outseeQualityControl_box_Content_right_bottom_tree"
v-show="isleftcodeShow"
>
<el-tree
:data="departmentTree"
:props="defaultProps"
:default-expand-all="false"
ref="tree"
node-key="id"
@node-click="handleNodeClick"
>
<template #default="{ node, data }">
<span class="custom-tree-node">
<div
class="leftbox"
:class="[data.ruleName != '非编码问题' ? 'leftboxs' : '']"
>
<el-tooltip placement="bottom" trigger="hover">
<template #content>{{ data.ruleName }} </template>
<span
:class="[
data.ruleName == '非编码问题' ? 'spans' : '',
]"
>{{ data.ruleName }}</span
>
</el-tooltip>
</div>
</span>
</template>
</el-tree>
<div class="outseeQualityControl_box_header">
<div class="outseeQualityControl_box_header_text"></div>
</div>
<div
class="outseeQualityControl_box_Content_right_bottom_tree"
v-show="!isleftcodeShow"
>
<el-tree
:data="rightdepartmentTree"
:props="defaultProps"
:default-expand-all="false"
ref="tree"
node-key="id"
@node-click="handleNodeClick"
v-show="!isnodataShow"
>
<template #default="{ node, data }">
<span class="custom-tree-node">
<div
class="leftbox"
:class="[data.ruleName != '编码问题' ? 'leftboxs' : '']"
>
<el-tooltip placement="bottom" trigger="hover">
<template #content>{{ data.ruleName }} </template>
<span
:class="[data.ruleName == '编码问题' ? 'spans' : '']"
>{{ data.ruleName }}</span
<div class="outseeQualityControl_box_Content">
<div class="outseeQualityControl_box_Content_left">
<medical-record-homepage :medicalrecord="medicalrecord" :clicktitle="clicktitle"> </medical-record-homepage>
</div>
<div class="outseeQualityControl_box_Content_right">
<div class="outseeQualityControl_box_Content_right_top">
<!--非编码问题 -->
<div
:class="[isleftcodeShow ? 'outseeQualityControl_box_Content_right_top_left' : 'outseeQualityControl_box_Content_right_top_left11']"
@click="leftcode"
>
</el-tooltip>
<div class="outseeQualityControl_box_Content_right_top_left_div1">
<img src="../assets/img/fbm.png" alt="" v-show="isleftcodeShow" />
<img src="../assets/img/bm.png" alt="" v-show="!isleftcodeShow" />
</div>
<div class="outseeQualityControl_box_Content_right_top_left_div2">
<span
:class="[
isleftcodeShow
? 'outseeQualityControl_box_Content_right_top_left_div2_span1'
: 'outseeQualityControl_box_Content_right_top_left_div2_span11',
]"
>{{ fruleCount }}</span
>
<span
:class="[
isleftcodeShow
? 'outseeQualityControl_box_Content_right_top_left_div2_span2'
: 'outseeQualityControl_box_Content_right_top_left_div2_span22',
]"
>非编码问题</span
>
</div>
</div>
<!-- 编码问题 -->
<div
:class="[
isleftcodeShow ? 'outseeQualityControl_box_Content_right_top_right' : 'outseeQualityControl_box_Content_right_top_right11',
]"
@click="rightcode"
>
<div class="outseeQualityControl_box_Content_right_top_right_div1">
<img src="../assets/img/fbm.png" alt="" v-show="!isleftcodeShow" />
<img src="../assets/img/bm.png" alt="" v-show="isleftcodeShow" />
</div>
<div class="outseeQualityControl_box_Content_right_top_right_div2">
<span
:class="[
isleftcodeShow
? 'outseeQualityControl_box_Content_right_top_right_div2_span1'
: 'outseeQualityControl_box_Content_right_top_right_div2_span11',
]"
>{{ ruleCount }}</span
>
<span
:class="[
isleftcodeShow
? 'outseeQualityControl_box_Content_right_top_right_div2_span2'
: 'outseeQualityControl_box_Content_right_top_right_div2_span22',
]"
>编码问题</span
>
</div>
</div>
</div>
<div class="outseeQualityControl_box_Content_right_center">
<div class="outseeQualityControl_box_Content_right_center_line" v-show="isleftcodeShow"></div>
<div class="outseeQualityControl_box_Content_right_center_line2" v-show="!isleftcodeShow"></div>
</div>
<div class="outseeQualityControl_box_Content_right_bottom">
<!-- <div class="outseeQualityControl_box_Content_right_bottom_title">患者基本信息</div> -->
<div class="outseeQualityControl_box_Content_right_bottom_tree" v-show="isleftcodeShow">
<el-tree
:data="departmentTree"
:props="defaultProps"
:default-expand-all="false"
ref="tree"
node-key="id"
@node-click="handleNodeClick"
>
<template #default="{ node, data }">
<span class="custom-tree-node">
<div class="leftbox" :class="[data.ruleName != '非编码问题' ? 'leftboxs' : '']">
<el-tooltip placement="bottom" trigger="hover">
<template #content>{{ data.ruleName }} </template>
<span :class="[data.ruleName == '非编码问题' ? 'spans' : '']">{{ data.ruleName }}</span>
</el-tooltip>
</div>
</span>
</template>
</el-tree>
</div>
<div class="outseeQualityControl_box_Content_right_bottom_tree" v-show="!isleftcodeShow">
<el-tree
:data="rightdepartmentTree"
:props="defaultProps"
:default-expand-all="false"
ref="tree"
node-key="id"
@node-click="handleNodeClick"
v-show="!isnodataShow"
>
<template #default="{ node, data }">
<span class="custom-tree-node">
<div class="leftbox" :class="[data.ruleName != '编码问题' ? 'leftboxs' : '']">
<el-tooltip placement="bottom" trigger="hover">
<template #content>{{ data.ruleName }} </template>
<span :class="[data.ruleName == '编码问题' ? 'spans' : '']">{{ data.ruleName }}</span>
</el-tooltip>
</div>
</span>
</template>
</el-tree>
<div class="outseeQualityControl_box_Content_right_bottom_tree_nodata" v-show="isnodataShow">
<img class="outseeQualityControl_box_Content_right_bottom_tree_nodata_img" src="../assets/img/mininodata.png" alt="" />
<div class="outseeQualityControl_box_Content_right_bottom_tree_nodata_text">暂无数据</div>
</div>
</div>
</div>
</span>
</template>
</el-tree>
<div
class="
outseeQualityControl_box_Content_right_bottom_tree_nodata
"
v-show="isnodataShow"
>
<img
class="
outseeQualityControl_box_Content_right_bottom_tree_nodata_img
"
src="../assets/img/mininodata.png"
alt=""
/>
<div
class="
outseeQualityControl_box_Content_right_bottom_tree_nodata_text
"
>
暂无数据
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</template>
<script>
import http from "../utils/http";
import {
reactive,
toRefs,
onMounted,
nextTick,
computed,
} from "@vue/composition-api";
import { reactive, toRefs, onMounted, nextTick, computed } from "@vue/composition-api";
import medicalRecordHomepage from "../components/medicalRecordHomepage/index.vue";
import { useRoute, useRouter } from "../utils/useVueRouter";
import $ from "jquery";
import { setItem, getItem } from "../utils/auth";
import { Message ,Loading} from "element-ui";
import { Message, Loading } from "element-ui";
export default {
components: {
medicalRecordHomepage,
},
name: "outseeQualityControl",
setup() {
let state = reactive({
medicalrecord: null,
ScoringDetails: null,
caseHistoryScoreData: null,
departmentTree: [], //非编码问题数据
rightdepartmentTree: [], //编码问题数据
isleftcodeShow: true, //非编码问题数据是否显示
defaultProps: {
children: "rulesLists",
label: "ruleName",
},
clicktitle: "",
fruleCount: "", //非编码问题数据条数
ruleCount: "", //编码问题数据条数
isnodataShow: false, //编码是否有数据,
inhtml: "",
splithtml: "", //
splithtml2: "", //单位电话
splithtml3: "", //病房
keys: [], //获取所有的问卷key
values: [], //
});
var route = useRoute();
onMounted(() => {
console.log(route.value);
});
//同步数据
const getSynchronous = (id) => {
http
.post(`/medical/get/Synchronization?id=${route.value.query.id}`)
.then((data) => {
Message.success(data.message);
})
.catch((error) => {
Message.error(error);
components: {
medicalRecordHomepage,
},
name: "outseeQualityControl",
setup() {
let state = reactive({
medicalrecord: null,
ScoringDetails: null,
caseHistoryScoreData: null,
departmentTree: [], //非编码问题数据
rightdepartmentTree: [], //编码问题数据
isleftcodeShow: true, //非编码问题数据是否显示
defaultProps: {
children: "rulesLists",
label: "ruleName",
},
clicktitle: "",
fruleCount: "", //非编码问题数据条数
ruleCount: "", //编码问题数据条数
isnodataShow: false, //编码是否有数据,
inhtml: "",
splithtml: "", //
splithtml2: "", //单位电话
splithtml3: "", //病房
keys: [], //获取所有的问卷key
values: [], //
});
};
//获取到点击的值
const handleNodeClick = (data) => {
let arr = document.getElementsByClassName(data.columnName);
let dom = $("#medicalRecord").find("#clickColor");
if (dom.length != 0) {
dom.removeAttr("id");
}
arr[0].setAttribute("id", "clickColor");
scrollTop();
};
function scrollTop() {
if ($("#clickColor").position()) {
$(".outseeQualityControl_box_Content_left").animate(
{
scrollTop:
$("#clickColor").offset().top -
$(".outseeQualityControl_box_Content_left").offset().top +
$(".outseeQualityControl_box_Content_left").scrollTop() -
300,
},
500
);
}
}
const loadingOption1 = {
// 加载loading
fullscreen: true,
text: "正在加载...",
spinner: "el-icon-loading",
background: "rgba(0, 0, 0, 0.5)",
};
//获取患者基本信息树形数据
function getScoringDetails(id) {
var loadingInstance1 = Loading.service(loadingOption1);
http
.post(`/medical/get/GetCaseHisRule?id=${id}`, {})
.then((data) => {
state.departmentTree = data[0].rulesLists;
state.rightdepartmentTree = data[1].rulesLists;
state.fruleCount = data[0].ruleCount;
state.ruleCount = data[1].ruleCount;
if (state.fruleCount == 0 || state.ruleCount == 0) {
state.isnodataShow = true;
}
loadingInstance1.close();
})
.catch((error) => {
loadingInstance1.close();
var route = useRoute();
onMounted(() => {
console.log(route.value);
});
}
// 获取病案首页数据
function getHomePage(id) {
http
.post(`/medical/Get/HomeHisPage?id=${id}`, {})
.then((data) => {
state.medicalrecord = data;
state.keys = Object.keys(data);
})
.catch((error) => {});
}
//点击非编码问题
const leftcode = () => {
state.isleftcodeShow = true;
};
//点击编码问题
const rightcode = () => {
state.isleftcodeShow = false;
};
onMounted(() => {
if (route.value.query.id) {
getScoringDetails(route.value.query.id);
getHomePage(route.value.query.id);
setItem("outpid", route.value.query.id);
}
});
return {
...toRefs(state),
handleNodeClick,
leftcode,
rightcode,
getSynchronous,
};
},
//同步数据
const getSynchronous = (id) => {
http.post(`/medical/get/Synchronization?id=${route.value.query.id}`)
.then((data) => {
Message.success(data.message);
})
.catch((error) => {
Message.error(error);
});
};
//获取到点击的值
const handleNodeClick = (data) => {
let arr = document.getElementsByClassName(data.columnName);
let dom = $("#medicalRecord").find("#clickColor");
if (dom.length != 0) {
dom.removeAttr("id");
}
arr[0].setAttribute("id", "clickColor");
scrollTop();
};
function scrollTop() {
if ($("#clickColor").position()) {
$(".outseeQualityControl_box_Content_left").animate(
{
scrollTop:
$("#clickColor").offset().top -
$(".outseeQualityControl_box_Content_left").offset().top +
$(".outseeQualityControl_box_Content_left").scrollTop() -
300,
},
500
);
}
}
const loadingOption1 = {
// 加载loading
fullscreen: true,
text: "正在加载...",
spinner: "el-icon-loading",
background: "rgba(0, 0, 0, 0.5)",
};
//获取患者基本信息树形数据
function getScoringDetails(id) {
var loadingInstance1 = Loading.service(loadingOption1);
http.post(`/medical/get/GetCaseHisRule?id=${id}`, {})
.then((data) => {
state.departmentTree = data[0].rulesLists;
state.rightdepartmentTree = data[1].rulesLists;
state.fruleCount = data[0].ruleCount;
state.ruleCount = data[1].ruleCount;
if (state.fruleCount == 0 || state.ruleCount == 0) {
state.isnodataShow = true;
}
loadingInstance1.close();
})
.catch((error) => {
loadingInstance1.close();
});
}
// 获取病案首页数据
function getHomePage(id) {
http.post(`/medical/Get/HomeHisPage?id=${id}`, {})
.then((data) => {
state.medicalrecord = data;
state.keys = Object.keys(data);
})
.catch((error) => {});
}
//点击非编码问题
const leftcode = () => {
state.isleftcodeShow = true;
};
//点击编码问题
const rightcode = () => {
state.isleftcodeShow = false;
};
onMounted(() => {
if (route.value.query.id) {
getScoringDetails(route.value.query.id);
getHomePage(route.value.query.id);
setItem("outpid", route.value.query.id);
}
});
return {
...toRefs(state),
handleNodeClick,
leftcode,
rightcode,
getSynchronous,
};
},
};
</script>
<style lang="scss">
// @import '../styles/mixin.scss';
// @import 'styles/media/components/outseeQualityControl.scss';
.outseeQualityControl {
height: 96%;
background-color: white;
padding: 20px;
overflow: hidden;
position: relative;
#clickColor {
background-color: #f3bf18;
}
&_box {
height: 100%;
width: 100%;
background-color: #f3fafd;
padding: 10px;
&_btn {
width: 100%;
display: flex;
justify-content: flex-end;
margin-bottom: 10px;
&_button{
background-color: #2cabe3;
color: #fff;
}
}
&_header {
height: r(25, 1920);
background: url("../assets/img/dataMaintenance/title.png") no-repeat;
background-size: 100% 100%;
width: 100%;
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
&_text {
font-size: 13px;
font-family: PingFang SC;
font-weight: 500;
color: #ffffff;
margin-left: 15px;
}
height: 96%;
background-color: white;
padding: 20px;
overflow: hidden;
position: relative;
#clickColor {
background-color: #f3bf18;
}
&_Content {
display: flex;
flex-direction: row;
height: 95%;
width: 100%;
justify-content: space-between;
align-items: center;
align-content: center;
flex-wrap: nowrap;
margin-top: 10px;
&_box {
height: 100%;
width: 100%;
background-color: #f3fafd;
&_left {
width: 65%;
background-color: #ffffff;
height: 900px;
padding: 10px;
padding: 0 8%;
overflow: auto;
overflow-x: hidden;
}
&_right {
width: 34%;
height: 900px;
display: flex;
flex-direction: column;
flex-wrap: nowrap;
justify-content: space-between;
align-items: center;
&_top {
background: #ffffff;
border-radius: 8px;
height: 16%;
width: 100%;
display: flex;
flex-direction: row;
flex-wrap: nowrap;
align-content: center;
justify-content: space-around;
align-items: center;
// padding: 3% 10%;
&_left {
flex: 1;
height: 45%;
border-radius: 8px;
background-image: url("../assets/img/BG.png");
background-repeat: no-repeat;
background-position: center;
&_btn {
width: 100%;
display: flex;
&_div1 {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
img {
width: 82px;
height: 53px;
}
}
&_div2 {
flex: 1;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
&_span1 {
color: #fff;
font-size: 26px;
font-weight: 700;
}
&_span2 {
justify-content: flex-end;
margin-bottom: 10px;
&_button {
background-color: #2cabe3;
color: #fff;
font-size: 16px;
font-weight: 500;
}
&_span11 {
color: #2cabe3;
font-size: 26px;
font-weight: 700;
}
&_span22 {
color: #2cabe3;
font-size: 16px;
font-weight: 500;
}
}
.leftblue {
color: #2cabe3;
}
}
&_left11 {
flex: 1;
height: 45%;
border-radius: 8px;
background-color: #fff;
background-repeat: no-repeat;
background-position: center;
display: flex;
&_div1 {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
img {
width: 82px;
height: 63px;
}
}
}
&_div2 {
flex: 1;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
&_span1 {
color: #fff;
font-size: 26px;
font-weight: 700;
}
&_span2 {
color: #fff;
font-size: 16px;
font-weight: 500;
}
&_span11 {
color: #2cabe3;
font-size: 26px;
font-weight: 700;
}
&_span22 {
color: #2cabe3;
font-size: 16px;
font-weight: 500;
}
}
.leftblue {
color: #2cabe3;
}
}
&_right {
height: 45%;
flex: 1;
border-radius: 8px;
display: flex;
&_div1 {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
img {
width: 82px;
height: 53px;
}
}
&_div2 {
flex: 1;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
&_span1 {
color: #2cabe3;
font-size: 26px;
font-weight: 700;
}
&_span2 {
color: #2cabe3;
font-size: 16px;
font-weight: 500;
}
&_span11 {
color: white;
font-size: 26px;
font-weight: 700;
}
&_header {
height: r(25, 1920);
background: url("../assets/img/dataMaintenance/title.png") no-repeat;
background-size: 100% 100%;
&_span22 {
color: white;
font-size: 16px;
font-weight: 500;
}
}
}
&_right11 {
flex: 1;
height: 45%;
border-radius: 8px;
background-image: url("../assets/img/BG.png");
background-repeat: no-repeat;
background-position: center;
width: 100%;
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
&_div1 {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
img {
width: 82px;
height: 53px;
}
}
&_div2 {
flex: 1;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
&_span1 {
color: #2cabe3;
font-size: 26px;
font-weight: 700;
}
&_span2 {
color: #2cabe3;
font-size: 16px;
&_text {
font-size: 13px;
font-family: PingFang SC;
font-weight: 500;
}
color: #ffffff;
margin-left: 15px;
}
}
}
&_center {
width: 100%;
height: 2%;
background-color: #ffff;
display: flex;
&_line {
width: 50%;
height: 30%;
border-radius: 40px;
background-color: #2cabe3;
margin: 5px 0 5px 0;
}
&_line2 {
width: 50%;
height: 30%;
border-radius: 40px;
background-color: #2cabe3;
margin: 5px 0 5px 0;
margin-left: 50%;
}
}
&_bottom {
background: #ffffff;
border-radius: 8px;
height: 100%;
width: 100%;
padding: 0 5% 5% 5%;
&_title {
font-size: 14px;
font-family: PingFang SC;
font-weight: bold;
color: #6a707e;
line-height: 40px;
&_Content {
display: flex;
flex-direction: row;
height: 95%;
width: 100%;
justify-content: space-between;
align-items: center;
align-content: center;
flex-wrap: nowrap;
height: 10%;
margin-top: 10px;
// @include flexLayout;
&_left {
width: 65%;
background-color: #ffffff;
height: 900px;
justify-content: left;
}
padding: 0 8%;
&_tree {
.is-leaf {
visibility: hidden;
overflow: auto;
overflow-x: hidden;
}
height: 90%;
overflow-x: hidden;
&_right {
width: 34%;
height: 900px;
display: flex;
flex-direction: column;
flex-wrap: nowrap;
justify-content: space-between;
align-items: center;
&_top {
background: #ffffff;
border-radius: 8px;
height: 16%;
width: 100%;
display: flex;
flex-direction: row;
flex-wrap: nowrap;
align-content: center;
justify-content: space-around;
align-items: center;
.leftboxs {
border-bottom: 1px dashed #dddddd;
}
// padding: 3% 10%;
&_left {
flex: 1;
height: 45%;
border-radius: 8px;
background-image: url("../assets/img/BG.png");
background-repeat: no-repeat;
background-position: center;
display: flex;
&_div1 {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
img {
width: 82px;
height: 53px;
}
}
&_div2 {
flex: 1;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
&_span1 {
color: #fff;
font-size: 26px;
font-weight: 700;
}
&_span2 {
color: #fff;
font-size: 16px;
font-weight: 500;
}
&_span11 {
color: #2cabe3;
font-size: 26px;
font-weight: 700;
}
&_span22 {
color: #2cabe3;
font-size: 16px;
font-weight: 500;
}
}
.leftblue {
color: #2cabe3;
}
}
.leftbox {
width: 100%;
display: flex;
align-items: center;
height: 100%;
overflow: hidden;
white-space: pre-wrap;
text-overflow: ellipsis;
span {
font-size: 14px;
font-family: PingFang SC;
font-weight: 400;
line-height: 22px;
text-align: start;
overflow: hidden;
width: 92%;
white-space: nowrap;
text-overflow: ellipsis;
}
.spans {
color: #2cabe3;
font-weight: 500;
}
}
&_left11 {
flex: 1;
height: 45%;
border-radius: 8px;
background-color: #fff;
background-repeat: no-repeat;
background-position: center;
display: flex;
&_div1 {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
img {
width: 82px;
height: 63px;
}
}
&_div2 {
flex: 1;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
&_span1 {
color: #fff;
font-size: 26px;
font-weight: 700;
}
&_span2 {
color: #fff;
font-size: 16px;
font-weight: 500;
}
&_span11 {
color: #2cabe3;
font-size: 26px;
font-weight: 700;
}
&_span22 {
color: #2cabe3;
font-size: 16px;
font-weight: 500;
}
}
.leftblue {
color: #2cabe3;
}
}
._score {
font-size: 13px;
font-family: PingFang SC;
font-weight: 400;
color: #ff3333;
line-height: 22px;
&_right {
height: 45%;
flex: 1;
border-radius: 8px;
display: flex;
&_div1 {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
img {
width: 82px;
height: 53px;
}
}
&_div2 {
flex: 1;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
&_span1 {
color: #2cabe3;
font-size: 26px;
font-weight: 700;
}
&_span2 {
color: #2cabe3;
font-size: 16px;
font-weight: 500;
}
&_span11 {
color: white;
font-size: 26px;
font-weight: 700;
}
&_span22 {
color: white;
font-size: 16px;
font-weight: 500;
}
}
}
width: 50%;
&_right11 {
flex: 1;
height: 45%;
border-radius: 8px;
background-image: url("../assets/img/BG.png");
background-repeat: no-repeat;
background-position: center;
display: flex;
&_div1 {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
img {
width: 82px;
height: 53px;
}
}
&_div2 {
flex: 1;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
&_span1 {
color: #2cabe3;
font-size: 26px;
font-weight: 700;
}
&_span2 {
color: #2cabe3;
font-size: 16px;
font-weight: 500;
}
}
}
}
display: flex;
flex-direction: row;
justify-content: flex-end;
padding-right: 5%;
&_center {
width: 100%;
height: 2%;
background-color: #ffff;
display: flex;
span {
color: rgba(106, 112, 126, 1);
}
}
&_line {
width: 50%;
height: 30%;
border-radius: 40px;
background-color: #2cabe3;
margin: 5px 0 5px 0;
}
.el-tree {
width: 98%;
height: 85px;
&_line2 {
width: 50%;
height: 30%;
border-radius: 40px;
background-color: #2cabe3;
margin: 5px 0 5px 0;
margin-left: 50%;
}
}
.el-tree-node__content {
height: 85px;
}
&_bottom {
background: #ffffff;
border-radius: 8px;
height: 100%;
width: 100%;
padding: 0 5% 5% 5%;
.el-tree-node.is-current > .el-tree-node__content {
height: 85px;
&_title {
font-size: 14px;
font-family: PingFang SC;
font-weight: bold;
color: #6a707e;
line-height: 40px;
/* background: #5fc3f0; */
height: 10%;
.custom-tree-node {
.leftbox {
width: 100%;
display: flex;
align-items: center;
height: 100%;
// @include flexLayout;
span {
font-size: 14px;
font-family: PingFang SC;
font-weight: 400;
line-height: 22px;
text-align: start;
justify-content: left;
}
}
._score {
font-size: 13px;
font-family: PingFang SC;
font-weight: 400;
line-height: 22px;
}
&_tree {
.is-leaf {
visibility: hidden;
}
height: 90%;
overflow-x: hidden;
.leftboxs {
border-bottom: 1px dashed #dddddd;
}
.leftbox {
width: 100%;
display: flex;
align-items: center;
height: 100%;
overflow: hidden;
white-space: pre-wrap;
text-overflow: ellipsis;
span {
font-size: 14px;
font-family: PingFang SC;
font-weight: 400;
line-height: 22px;
text-align: start;
overflow: hidden;
width: 92%;
white-space: nowrap;
text-overflow: ellipsis;
}
.spans {
color: #2cabe3;
font-weight: 500;
}
}
._score {
font-size: 13px;
font-family: PingFang SC;
font-weight: 400;
color: #ff3333;
line-height: 22px;
width: 50%;
display: flex;
flex-direction: row;
justify-content: flex-end;
padding-right: 5%;
span {
color: rgba(106, 112, 126, 1);
}
}
.el-tree {
width: 98%;
height: 85px;
.el-tree-node__content {
height: 85px;
}
.el-tree-node.is-current > .el-tree-node__content {
height: 85px;
/* background: #5fc3f0; */
.custom-tree-node {
.leftbox {
width: 100%;
display: flex;
align-items: center;
height: 100%;
span {
font-size: 14px;
font-family: PingFang SC;
font-weight: 400;
line-height: 22px;
text-align: start;
}
}
._score {
font-size: 13px;
font-family: PingFang SC;
font-weight: 400;
line-height: 22px;
}
}
}
}
.el-tree-node {
white-space: initial;
}
&_nodata {
height: 80%;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
&_img {
width: 80px;
height: 80px;
}
&_text {
color: #abafb3;
font-family: PingFang SC;
font-size: 14px;
}
}
}
}
}
}
}
}
.el-tree-node {
white-space: initial;
}
.custom-tree-node {
width: 100%;
display: flex;
flex-direction: row;
flex-wrap: nowrap;
align-content: center;
justify-content: space-between;
align-items: center;
height: 100%;
}
.el-tree > .el-tree-node {
//父级加下滑线
// border-bottom: 1px dashed #dddddd;
}
&_nodata {
height: 80%;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
//修改三角icon样式
.el-icon-caret-right {
font-size: 18px;
color: #e4e4e4;
}
&_img {
width: 80px;
height: 80px;
}
.el-tree-node__content .el-tree-node__label {
//子集字体小一号
font-size: 14;
font-family: PingFang SC;
font-weight: 400;
line-height: 22px;
}
&_text {
color: #abafb3;
font-family: PingFang SC;
font-size: 14px;
}
}
}
}
}
.el-tree-node__children .el-tree-node__label {
//子集字体小一号
font-size: 12px;
font-family: PingFang SC;
font-weight: 400;
line-height: 22px;
}
}
.custom-tree-node {
width: 100%;
display: flex;
flex-direction: row;
flex-wrap: nowrap;
align-content: center;
justify-content: space-between;
align-items: center;
height: 100%;
}
.el-tree > .el-tree-node {
//父级加下滑线
// border-bottom: 1px dashed #dddddd;
}
//修改三角icon样式
.el-icon-caret-right {
font-size: 18px;
color: #e4e4e4;
}
.el-tree-node__content .el-tree-node__label {
//子集字体小一号
font-size: 14;
font-family: PingFang SC;
font-weight: 400;
line-height: 22px;
}
.el-tree-node__children .el-tree-node__label {
//子集字体小一号
font-size: 12px;
font-family: PingFang SC;
font-weight: 400;
line-height: 22px;
}
}
</style>
......@@ -95,64 +95,75 @@
<el-radio :label="2">临时医嘱</el-radio>
</el-radio-group>
</div>
<el-form ref="tableDataform" :model="tableDataform">
<el-table
ref="multipleTable"
row-key="id"
:data="tableDataform.tableData"
height="100%"
style="width: 100%"
:tree-props="{ children: 'children', hasChildren: 'hasChildren' }"
:select-on-indeterminate="true"
@selection-change="SelectionChange"
@select-all="selectAll"
@select="select"
default-expand-all
size="mini"
:row-class-name="rowClass"
>
<el-table-column type="selection" :selectable="selectEnable" width="50" />
<el-table-column show-overflow-tooltip property="advice_name" label="路径名称" width="130" />
<el-table-column show-overflow-tooltip property="tickTime" label="当前时间" width="145">
<template #default="scope">
<span v-if="scope.row.ischeck == 1 && scope.row.orderType">{{ scope.row.tickTime }}</span>
</template>
</el-table-column>
<el-table-column show-overflow-tooltip property="orderType" label="类型" width="50">
<template #default="scope">
<div v-if="scope.row.orderType == '药疗'">
<i
@click.prevent="addRow(scope.row)"
v-if="scope.row.ischeck == 1 && !scope.row.isnew && scope.row.orderType && scope.row.isAdd"
class="el-icon-circle-plus-outline"
style="font-size: 14px; color: #0283bb; margin-right: 3px; cursor: pointer"
></i>
<i
@click.prevent="deleteRow(scope.row, tableData)"
v-if="scope.row.ischeck == 1 && scope.row.isnew && scope.row.orderType"
class="el-icon-remove-outline"
style="font-size: 14px; color: #ff0000; margin-right: 3px; cursor: pointer"
></i
>{{ scope.row.orderType }}
</div>
<div v-else>{{ scope.row.orderType }}</div>
<el-table
ref="multipleTable"
row-key="id"
:data="tableData"
height="100%"
style="width: 100%"
:tree-props="{ children: 'children', hasChildren: 'hasChildren' }"
:select-on-indeterminate="true"
@selection-change="SelectionChange"
@select-all="selectAll"
@select="select"
default-expand-all
size="mini"
:row-class-name="rowClass"
>
<el-table-column type="selection" :selectable="selectEnable" width="50" />
<el-table-column show-overflow-tooltip property="advice_name" label="路径名称" width="130" />
<el-table-column show-overflow-tooltip property="tickTime" label="当前时间" width="145">
<template #default="scope">
<span v-if="scope.row.ischeck == 1 && scope.row.orderType">{{ scope.row.tickTime }}</span>
</template>
</el-table-column>
<el-table-column show-overflow-tooltip property="isSkin" label="是否皮试" width="110">
<template #default="scope">
<template v-if="scope.row.orderType == '药疗' && scope.row.isnew">
<template v-if="scope.row.ischeck == 1 && scope.row.orderType && scope.row.isSkinCheck == 1">
<el-select size="mini" v-model="scope.row.isSkin">
<el-option v-for="item in isSkinoptions" :key="item.label" :label="item.label" :value="item.value"> </el-option>
</el-select>
</template>
<!-- <div v-else>{{ scope.row.isSkin == 1 ? "是" : "否" }}</div> -->
</template>
</el-table-column>
<el-table-column show-overflow-tooltip property="project_name" label="医院项目名称" width="200">
<template #default="scope">
<template v-if="scope.row.ischeck == 1 && scope.row.isnew && scope.row.orderType">
<el-popover placement="bottom" width="1000" height="600" trigger="focus" v-model="scope.row.isPop">
<el-table :data="gridData" @row-dblclick="rowdblclick" max-height="400" size="mini" style="width: 100%" row-key="id">
<el-table-column width="80" property="orderType" label="类型"></el-table-column>
<el-table-column show-overflow-tooltip width="200" property="project_name" label="医嘱名称"></el-table-column>
<el-table-column show-overflow-tooltip width="100" property="specifications" label="规格说明"></el-table-column>
<el-table-column show-overflow-tooltip width="100" property="dosage" label="药品剂型"></el-table-column>
<el-table-column show-overflow-tooltip width="100" property="isAntibiotic" label="抗生素"></el-table-column>
<!-- <el-table-column show-overflow-tooltip width="135" property="medicalPurpose" label="用药目的"></el-table-column> -->
<el-table-column show-overflow-tooltip width="80" property="medicUseQuantity" label="用量"></el-table-column>
<el-table-column show-overflow-tooltip width="80" property="medicUseUnit" label="单位"></el-table-column>
<el-table-column show-overflow-tooltip width="110" property="inventoryNum" label="可用数量"></el-table-column>
<!-- <el-table-column show-overflow-tooltip width="110" property="medicUsePlan" label="频率"></el-table-column>
</template>
</el-table-column>
<el-table-column show-overflow-tooltip property="orderType" label="类型" width="50">
<template #default="scope">
<div v-if="scope.row.orderType == '药疗'">
<i
@click.prevent="addRow(scope.row)"
v-if="scope.row.ischeck == 1 && !scope.row.isnew && scope.row.orderType && scope.row.isAdd"
class="el-icon-circle-plus-outline"
style="font-size: 14px; color: #0283bb; margin-right: 3px; cursor: pointer"
></i>
<i
@click.prevent="deleteRow(scope.row, tableData)"
v-if="scope.row.ischeck == 1 && scope.row.isnew && scope.row.orderType"
class="el-icon-remove-outline"
style="font-size: 14px; color: #ff0000; margin-right: 3px; cursor: pointer"
></i
>{{ scope.row.orderType }}
</div>
<div v-else>{{ scope.row.orderType }}</div>
</template>
</el-table-column>
<el-table-column show-overflow-tooltip property="project_name" label="医院项目名称" width="200">
<template #default="scope">
<template v-if="scope.row.ischeck == 1 && scope.row.isnew && scope.row.orderType">
<el-popover placement="bottom" width="1000" height="600" trigger="focus" v-model="scope.row.isPop">
<el-table :data="gridData" @row-dblclick="rowdblclick" max-height="400" size="mini" style="width: 100%" row-key="id">
<el-table-column width="80" property="orderType" label="类型"></el-table-column>
<el-table-column show-overflow-tooltip width="200" property="project_name" label="医嘱名称"></el-table-column>
<el-table-column show-overflow-tooltip width="100" property="specifications" label="规格说明"></el-table-column>
<el-table-column show-overflow-tooltip width="100" property="dosage" label="药品剂型"></el-table-column>
<el-table-column show-overflow-tooltip width="100" property="isAntibiotic" label="抗生素"></el-table-column>
<!-- <el-table-column show-overflow-tooltip width="135" property="medicalPurpose" label="用药目的"></el-table-column> -->
<el-table-column show-overflow-tooltip width="80" property="medicUseQuantity" label="用量"></el-table-column>
<el-table-column show-overflow-tooltip width="80" property="medicUseUnit" label="单位"></el-table-column>
<el-table-column show-overflow-tooltip width="110" property="inventoryNum" label="可用数量"></el-table-column>
<!-- <el-table-column show-overflow-tooltip width="110" property="medicUsePlan" label="频率"></el-table-column>
<el-table-column show-overflow-tooltip width="60" property="dropNumber" label="滴数"></el-table-column>
<el-table-column show-overflow-tooltip width="80" property="medicQuantity" label="用药总量"></el-table-column>
<el-table-column show-overflow-tooltip width="60" property="medicUnit" label="单位"></el-table-column>
......@@ -160,73 +171,129 @@
<el-table-column show-overflow-tooltip width="150" property="description" label="诊断描述"></el-table-column>
<el-table-column show-overflow-tooltip width="150" property="symptom" label="症状及体征"></el-table-column>
<el-table-column show-overflow-tooltip width="85" property="emergency" label="急诊"></el-table-column> -->
</el-table>
<el-input
slot="reference"
placeholder="请输入"
v-model="scope.row.project_name"
@focus="onfocus(scope.row, $event)"
@input="onInput(scope.row, $event)"
></el-input>
</el-popover>
</template>
<span v-else>{{ scope.row.project_name }}</span>
</template>
</el-table-column>
<el-table-column show-overflow-tooltip property="specifications" label="规格说明" width="80" />
<el-table-column show-overflow-tooltip property="dosage" label="药品剂型" width="70" />
<el-table-column show-overflow-tooltip property="isAntibiotic" label="抗生素" width="85">
<template #default="scope">
<el-select v-if="scope.row.ischeck == 1 && scope.row.orderType" size="mini" v-model="scope.row.isAntibiotic">
<el-option v-for="item in chargeTypeoptions" :key="item.label" :label="item.label" :value="item.label"> </el-option>
</el-select>
<span v-else>{{ scope.row.isAntibiotic }}</span>
</el-table>
<el-input
slot="reference"
placeholder="请输入"
v-model="scope.row.project_name"
@focus="onfocus(scope.row, $event)"
@input="onInput(scope.row, $event)"
></el-input>
</el-popover>
</template>
</el-table-column>
<el-table-column show-overflow-tooltip property="medicalPurpose" label="用药目的" width="135">
<template #default="scope">
<template v-if="scope.row.ischeck == 1 && scope.row.orderType">
<template v-if="scope.row.isAntibiotic == '是' && scope.row.orderType == '药疗'">
<el-form-item prop="medicalPurpose" :rules="[{ required: true, message: '请选择' }]">
<span v-else>{{ scope.row.project_name }}</span>
</template>
</el-table-column>
<el-table-column show-overflow-tooltip property="specifications" label="规格说明" width="80" />
<el-table-column show-overflow-tooltip property="dosage" label="药品剂型" width="70" />
<el-table-column show-overflow-tooltip property="isAntibiotic" label="抗生素" width="110">
<template #default="scope">
<el-select v-if="scope.row.ischeck == 1 && scope.row.orderType" size="mini" v-model="scope.row.isAntibiotic">
<el-option v-for="item in chargeTypeoptions" :key="item.label" :label="item.label" :value="item.label"> </el-option>
</el-select>
<span v-else>{{ scope.row.isAntibiotic }}</span>
</template>
</el-table-column>
<el-table-column show-overflow-tooltip property="medicalPurpose" label="用药目的" width="135">
<template #default="scope">
<template v-if="scope.row.ischeck == 1 && scope.row.orderType">
<el-form :model="scope.row" label-width="15px" label-position="left" ref="medicalPurpose" class="demo-ruleForm">
<el-form-item
prop="medicalPurpose"
:rules="[
{
required:
scope.row.isSkin == 1 && scope.row.orderType == '药疗'
? true
: scope.row.isAntibiotic == '是' && scope.row.orderType == '药疗'
? true
: false,
message: '请选择',
},
]"
>
<template #label> <span></span></template>
<el-select size="mini" v-model="scope.row.medicalPurpose">
<el-option v-for="item in medicalPurposeoptions" :key="item.id" :label="item.describe" :value="item.describe">
</el-option>
</el-select>
</el-form-item>
</el-form>
<!-- <template v-if="scope.row.isAntibiotic == '是' && scope.row.orderType == '药疗'">
<el-form :model="scope.row" label-width="15px" label-position="left" ref="medicalPurpose" class="demo-ruleForm">
<el-form-item
prop="medicalPurpose"
:rules="[
{ required: scope.row.isAntibiotic == '是' && scope.row.orderType == '药疗' ? true : false, message: '请选择' },
]"
>
<template #label> <span></span></template>
<el-select size="mini" v-model="scope.row.medicalPurpose">
<el-option v-for="item in medicalPurposeoptions" :key="item.id" :label="item.describe" :value="item.describe">
</el-option>
</el-select>
</el-form-item>
</template>
<template v-else>
<el-select size="mini" v-model="scope.row.medicalPurpose">
<el-option v-for="item in medicalPurposeoptions" :key="item.id" :label="item.describe" :value="item.describe">
</el-option>
</el-select>
</template>
</el-form>
</template>
<span v-else>{{ scope.row.medicalPurpose }}</span>
<template v-else>
<el-select size="mini" v-model="scope.row.medicalPurpose">
<el-option v-for="item in medicalPurposeoptions" :key="item.id" :label="item.describe" :value="item.describe">
</el-option>
</el-select>
</template> -->
</template>
</el-table-column>
<el-table-column prop="medicUseQuantity" label="用量" width="85">
<template #default="scope">
<template v-if="scope.row.ischeck == 1 && scope.row.orderType">
<template v-if="scope.row.orderType == '药疗'">
<el-form-item prop="medicUseQuantity" :rules="[{ required: true, message: '请填写' }]">
<span v-else>{{ scope.row.medicalPurpose }}</span>
</template>
</el-table-column>
<el-table-column prop="medicUseQuantity" label="用量" width="85">
<template #default="scope">
<template v-if="scope.row.ischeck == 1 && scope.row.orderType">
<el-form :model="scope.row" label-width="15px" label-position="left" ref="medicUseQuantity" class="demo-ruleForm">
<el-form-item
prop="medicUseQuantity"
:rules="[{ required: scope.row.orderType == '药疗' && scope.row.isSkin != 1 ? true : false, message: '请填写' }]"
>
<template #label> <span></span></template>
<el-input v-model="scope.row.medicUseQuantity" @input="setIput(scope.row, $event)" size="mini"></el-input>
</el-form-item>
</el-form>
<!-- <template v-if="scope.row.orderType == '药疗'">
<el-form :model="scope.row" label-width="15px" label-position="left" ref="medicUseQuantity" class="demo-ruleForm">
<el-form-item
prop="medicUseQuantity"
:rules="[{ required: scope.row.orderType == '药疗' && scope.row.isSkin == '是' ? true : false, message: '请填写' }]"
>
<template #label> <span></span></template>
<el-input v-model="scope.row.medicUseQuantity" @input="setIput(scope.row, $event)" size="mini"></el-input>
</el-form-item>
</template>
<template v-else>
<el-input v-model="scope.row.medicUseQuantity" @input="setIput(scope.row, $event)" size="mini"></el-input>
</template>
</el-form>
</template>
<span v-else>{{ scope.row.medicUseQuantity }}</span>
<template v-else>
<el-input v-model="scope.row.medicUseQuantity" @input="setIput(scope.row, $event)" size="mini"></el-input>
</template> -->
</template>
</el-table-column>
<el-table-column show-overflow-tooltip property="medicUseUnit" label="单位" width="50" />
<el-table-column show-overflow-tooltip property="medicUseMode" label="途径" width="120">
<template #default="scope">
<template v-if="scope.row.ischeck == 1 && scope.row.orderType">
<template v-if="scope.row.orderType == '药疗'">
<span v-else>{{ scope.row.medicUseQuantity }}</span>
</template>
</el-table-column>
<el-table-column show-overflow-tooltip property="medicUseUnit" label="单位" width="50" />
<el-table-column show-overflow-tooltip property="medicUseMode" label="途径" width="120">
<template #default="scope">
<template v-if="scope.row.ischeck == 1 && scope.row.orderType">
<el-form :model="scope.row" label-width="15px" label-position="left" ref="medicUseMode" class="demo-ruleForm">
<el-form-item
prop="medicUseMode"
:rules="[{ required: scope.row.orderType == '药疗' && scope.row.isSkin != 1 ? true : false, message: '请选择' }]"
>
<template #label> <span></span></template>
<el-select size="mini" v-model="scope.row.medicUseMode" filterable remote :filter-method="remoteMethod">
<el-option v-for="item in medicUseModeoptions" :key="item.id" :label="item.describe" :value="item.describe">
</el-option>
</el-select>
</el-form-item>
</el-form>
<!-- <template v-if="scope.row.orderType == '药疗'">
<el-form :model="scope.row" label-width="15px" label-position="left" ref="medicUseMode" class="demo-ruleForm">
<el-form-item prop="medicUseMode" :rules="[{ required: true, message: '请选择' }]">
<template #label> <span></span></template>
<el-select size="mini" v-model="scope.row.medicUseMode" filterable remote :filter-method="remoteMethod">
......@@ -234,21 +301,35 @@
</el-option>
</el-select>
</el-form-item>
</template>
<template v-else>
<el-select size="mini" v-model="scope.row.medicUseMode" filterable remote :filter-method="remoteMethod">
<el-option v-for="item in medicUseModeoptions" :key="item.id" :label="item.describe" :value="item.describe">
</el-option>
</el-select>
</template>
</el-form>
</template>
<span v-else>{{ scope.row.medicUseMode }}</span>
<template v-else>
<el-select size="mini" v-model="scope.row.medicUseMode" filterable remote :filter-method="remoteMethod">
<el-option v-for="item in medicUseModeoptions" :key="item.id" :label="item.describe" :value="item.describe">
</el-option>
</el-select>
</template> -->
</template>
</el-table-column>
<el-table-column show-overflow-tooltip property="medicUsePlan" label="频率" width="130">
<template #default="scope">
<template v-if="scope.row.ischeck == 1 && scope.row.orderType">
<template v-if="scope.row.orderType == '药疗'">
<span v-else>{{ scope.row.medicUseMode }}</span>
</template>
</el-table-column>
<el-table-column show-overflow-tooltip property="medicUsePlan" label="频率" width="130">
<template #default="scope">
<template v-if="scope.row.ischeck == 1 && scope.row.orderType">
<el-form :model="scope.row" label-width="15px" label-position="left" ref="medicUsePlan" class="demo-ruleForm">
<el-form-item
prop="medicUsePlan"
:rules="[{ required: scope.row.orderType == '药疗' && scope.row.isSkin != 1 ? true : false, message: '请选择' }]"
>
<template #label> <span></span></template>
<el-select size="mini" v-model="scope.row.medicUsePlan" @change="setIput(scope.row, $event)">
<el-option v-for="item in medicUsePlanoptions" :key="item.id" :label="item.describe" :value="item.describe">
</el-option>
</el-select>
</el-form-item>
</el-form>
<!-- <template v-if="scope.row.orderType == '药疗'">
<el-form :model="scope.row" label-width="15px" label-position="left" ref="medicUsePlan" class="demo-ruleForm">
<el-form-item prop="medicUsePlan" :rules="[{ required: true, message: '请选择' }]">
<template #label> <span></span></template>
<el-select size="mini" v-model="scope.row.medicUsePlan" @change="setIput(scope.row, $event)">
......@@ -256,56 +337,61 @@
</el-option>
</el-select>
</el-form-item>
</template>
<template v-else>
<el-select size="mini" v-model="scope.row.medicUsePlan" @change="setIput(scope.row, $event)">
<el-option v-for="item in medicUsePlanoptions" :key="item.id" :label="item.describe" :value="item.describe">
</el-option>
</el-select>
</template>
</el-form>
</template>
<span v-else>{{ scope.row.medicUsePlan }}</span>
</template>
</el-table-column>
<el-table-column prop="dropNumber" label="滴数" width="85">
<template #default="scope">
<el-input
v-if="scope.row.ischeck == 1 && scope.row.orderType"
v-model="scope.row.dropNumber"
size="mini"
@input="setIput(scope.row, $event)"
></el-input>
<span v-else>{{ scope.row.dropNumber }}</span>
</template>
</el-table-column>
<el-table-column prop="medicQuantity" label="用药总量" width="85">
<template #default="scope">
<el-input v-if="scope.row.ischeck == 1 && scope.row.orderType" v-model="scope.row.medicQuantity" size="mini"></el-input>
<span v-else>{{ scope.row.medicQuantity }}</span>
<template v-else>
<el-select size="mini" v-model="scope.row.medicUsePlan" @change="setIput(scope.row, $event)">
<el-option v-for="item in medicUsePlanoptions" :key="item.id" :label="item.describe" :value="item.describe">
</el-option>
</el-select>
</template> -->
</template>
</el-table-column>
<el-table-column show-overflow-tooltip property="medicUnit" label="单位" width="60" />
<el-table-column show-overflow-tooltip property="remark" label="嘱托" width="150'">
<template #default="scope">
<el-input
v-if="scope.row.ischeck == 1 && scope.row.orderType"
v-model="scope.row.remark"
size="mini"
type="textarea"
:autosize="{ minRows: 2 }"
placeholder="请输入内容"
></el-input>
<span v-else>{{ scope.row.remark }}</span>
</template>
</el-table-column>
<span v-else>{{ scope.row.medicUsePlan }}</span>
</template>
</el-table-column>
<el-table-column prop="dropNumber" label="滴数" width="85">
<template #default="scope">
<el-input
v-if="scope.row.ischeck == 1 && scope.row.orderType"
v-model="scope.row.dropNumber"
size="mini"
@input="setIput(scope.row, $event)"
></el-input>
<span v-else>{{ scope.row.dropNumber }}</span>
</template>
</el-table-column>
<el-table-column prop="medicQuantity" label="用药总量" width="85">
<template #default="scope">
<el-input v-if="scope.row.ischeck == 1 && scope.row.orderType" v-model="scope.row.medicQuantity" size="mini"></el-input>
<span v-else>{{ scope.row.medicQuantity }}</span>
</template>
</el-table-column>
<el-table-column show-overflow-tooltip property="medicUnit" label="单位" width="60" />
<el-table-column show-overflow-tooltip property="remark" label="嘱托" width="150'">
<template #default="scope">
<el-input
v-if="scope.row.ischeck == 1 && scope.row.orderType"
v-model="scope.row.remark"
size="mini"
type="textarea"
:autosize="{ minRows: 2 }"
placeholder="请输入内容"
></el-input>
<span v-else>{{ scope.row.remark }}</span>
</template>
</el-table-column>
<el-table-column prop="description" label="诊断描述" width="150">
<template #default="scope">
<el-form-item
prop="description"
:rules="[{ required: true, message: '请输入内容' }]"
v-if="scope.row.ischeck == 1 && scope.row.type != 1 && scope.row.isedit && scope.row.orderType"
>
<el-table-column prop="description" label="诊断描述" width="150">
<template #default="scope">
<el-form
:model="scope.row"
label-width="15px"
label-position="left"
ref="numberValidateForm"
class="demo-ruleForm"
v-if="scope.row.ischeck == 1 && scope.row.type != 1 && scope.row.isedit && scope.row.orderType"
>
<el-form-item prop="description" :rules="[{ required: true, message: '请输入内容' }]">
<template #label> <span></span></template>
<el-input
v-model="scope.row.description"
......@@ -315,15 +401,20 @@
:autosize="{ minRows: 2 }"
></el-input>
</el-form-item>
</template>
</el-table-column>
<el-table-column prop="symptom" label="症状及体征" width="150">
<template #default="scope">
<el-form-item
prop="symptom"
:rules="[{ required: true, message: '请输入内容' }]"
v-if="scope.row.ischeck == 1 && scope.row.type != 1 && scope.row.isedit && scope.row.orderType"
>
</el-form>
</template>
</el-table-column>
<el-table-column prop="symptom" label="症状及体征" width="150">
<template #default="scope">
<el-form
:model="scope.row"
label-width="15px"
label-position="left"
ref="numberValidateForm1"
class="demo-ruleForm"
v-if="scope.row.ischeck == 1 && scope.row.type != 1 && scope.row.isedit && scope.row.orderType"
>
<el-form-item prop="symptom" :rules="[{ required: true, message: '请输入内容' }]">
<template #label> <span></span></template>
<el-input
v-model="scope.row.symptom"
......@@ -333,29 +424,29 @@
:autosize="{ minRows: 2 }"
></el-input>
</el-form-item>
</template>
</el-table-column>
<el-table-column show-overflow-tooltip property="emergency" label="急诊" width="85">
<template #default="scope">
<el-select v-if="scope.row.ischeck == 1 && scope.row.isedit && scope.row.orderType" size="mini" v-model="scope.row.emergency">
<el-option v-for="item in chargeTypeoptions" :key="item.label" :label="item.label" :value="item.value"> </el-option>
</el-select>
<!-- <span v-else>{{ isObj[scope.row.emergency] }}</span> -->
</template>
</el-table-column>
<el-table-column label="操作" width="80">
<template #default="scope">
<el-button
v-if="scope.row.ischeck == 1 && scope.row.type != 1 && scope.row.isedit && scope.row.orderType"
size="mini"
type="primary"
@click="goSeeScore(scope.row, scope.$index, scope)"
>更多</el-button
>
</template>
</el-table-column>
</el-table>
</el-form>
</el-form>
</template>
</el-table-column>
<el-table-column show-overflow-tooltip property="emergency" label="急诊" width="85">
<template #default="scope">
<el-select v-if="scope.row.ischeck == 1 && scope.row.isedit && scope.row.orderType" size="mini" v-model="scope.row.emergency">
<el-option v-for="item in chargeTypeoptions" :key="item.label" :label="item.label" :value="item.value"> </el-option>
</el-select>
<!-- <span v-else>{{ isObj[scope.row.emergency] }}</span> -->
</template>
</el-table-column>
<el-table-column label="操作" width="80">
<template #default="scope">
<el-button
v-if="scope.row.ischeck == 1 && scope.row.type != 1 && scope.row.isedit && scope.row.orderType"
size="mini"
type="primary"
@click="goSeeScore(scope.row, scope.$index, scope)"
>更多</el-button
>
</template>
</el-table-column>
</el-table>
</div>
</div>
<!-- 更多弹框开始 -->
......@@ -430,15 +521,21 @@ export default {
reason: "", //变异原因
remarks: "", //备注
},
tableDataform: {
tableData: [],
},
//路径天数下拉数据
options: [],
reasonoptions: [], //变异原因
crid: null,
chickid: [], //选中的id
isSkinoptions: [
{
label: "是",
value: 1,
},
{
label: "否",
value: 2,
},
],
chargeTypeoptions: [
{
label: "是",
......@@ -557,7 +654,7 @@ export default {
stockID: null,
dosage: null,
isAntibiotic: "",
medicUseQuantity: 0.0,
medicUseQuantity: 0,
medicUseUnit: null,
medicUseMode: null,
medicUsePlan: null,
......@@ -580,6 +677,16 @@ export default {
inspectRemarks: null,
description: null,
isPop: false,
order_round: "",
min_unit: "",
package_unit: "",
retail_unit: "",
unit_dose: 1,
useDay: 1,
packagingnum: 1,
split_num: 1,
isSkin: undefined,
isSkinCheck: r.isSkinCheck,
};
this.toggleSelection(newData, true);
this.cout = cout + 1;
......@@ -640,6 +747,15 @@ export default {
item.description = row.description;
// item.adviceType = row.adviceType;
// item.advice_name = row.advice_name;
item.order_round = row.order_round;
item.min_unit = row.min_unit;
item.package_unit = row.package_unit;
item.retail_unit = row.retail_unit;
item.unit_dose = row.unit_dose;
item.useDay = row.useDay;
item.packagingnum = row.packagingnum;
item.split_num = row.split_num;
item.isSkin = row.isSkin;
}
if (item.children && item.children.length > 0) {
this.pushData(row, item.children);
......@@ -966,7 +1082,7 @@ export default {
});
this.newtable1 = data.route1;
this.newtable2 = data.route2;
this.tableDataform.tableData = this.radio == 1 ? data.route1 : data.route2;
this.tableData = this.radio == 1 ? data.route1 : data.route2;
})
.catch((error) => {
console.log(error);
......@@ -974,11 +1090,6 @@ export default {
},
//单选
radiochange(e) {
console.log(this.$refs.medicalPurpose);
this.$refs.tableDataform.validate((valid) => {
console.log(valid);
});
return;
if (this.$refs.numberValidateForm || this.$refs.numberValidateForm1) {
this.$refs.numberValidateForm.validate((valid) => {
if (valid) {
......
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