Merge branch 'main' of http://47.97.125.165:8902/jiangs/lis8.0-vue3
This commit is contained in:
commit
f0c3aaa59b
@ -5,33 +5,29 @@ import { getGroupInstrdList } from '@/api/liswork/work/LisWork';
|
|||||||
import { comDict } from '@/utils/dict'
|
import { comDict } from '@/utils/dict'
|
||||||
|
|
||||||
const dictData = ref<DictData>({});
|
const dictData = ref<DictData>({});
|
||||||
const instrOptions = ref<{ yq: string; yqmc: string }[]>([])
|
const instrOptions = ref<{ yq: string; yqmc: string }[]>([]);
|
||||||
|
|
||||||
export const getYqData = () => {
|
export const getYqData = (data?: any) => {
|
||||||
getGroupInstrdList()
|
// 避免重复请求
|
||||||
.then((res: any) => {
|
if (instrOptions.value.length > 0) return;
|
||||||
|
getGroupInstrdList(data).then((res: any) => {
|
||||||
if (res.code == 0) {
|
if (res.code == 0) {
|
||||||
instrOptions.value = res.data.map((item: any) => ({
|
instrOptions.value = res.data.map((item: any) => ({
|
||||||
yq: item.yq.trim(),
|
yq: item.yq.trim(),
|
||||||
yqmc: item.yqmc
|
yqmc: item.yqmc
|
||||||
}))
|
}));
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
};
|
||||||
//'XMGL','ITEMCLASS', 'YQDL'
|
//'XMGL','ITEMCLASS', 'YQDL'
|
||||||
export const getDictData = async (...args: string[]) => {
|
export const getDictData = async (...args: string[]) => {
|
||||||
const dictRefs = await comDict(...args);
|
const dictRefs = await comDict(...args);
|
||||||
if(dictRefs.XMGL != undefined) dictData.value.XMGL = toRaw(dictRefs.XMGL.value) || []
|
// 遍历传入的字典类型参数,动态处理赋值
|
||||||
if(dictRefs.ITEMCLASS != undefined) dictData.value.ITEMCLASS = toRaw(dictRefs.ITEMCLASS.value) || []
|
args.forEach(key => {
|
||||||
if(dictRefs.YQDL != undefined) dictData.value.YQDL = toRaw(dictRefs.YQDL.value) || []
|
if (dictRefs[key] !== undefined) {
|
||||||
if(dictRefs.VA != undefined) dictData.value.VA = toRaw(dictRefs.VA.value) || []
|
dictData.value[key] = toRaw(dictRefs[key].value) || [];
|
||||||
if(dictRefs.LF != undefined) dictData.value.LF = toRaw(dictRefs.LF.value) || []
|
}
|
||||||
if(dictRefs.BT != undefined) dictData.value.BT = toRaw(dictRefs.BT.value) || []
|
});
|
||||||
if(dictRefs.SLZQ != undefined) dictData.value.SLZQ = toRaw(dictRefs.SLZQ.value) || []
|
|
||||||
if(dictRefs.UT != undefined) dictData.value.UT = toRaw(dictRefs.UT.value) || [] //单位
|
|
||||||
if(dictRefs.MD != undefined) dictData.value.MD = toRaw(dictRefs.MD.value) || [] //测试方法
|
|
||||||
if(dictRefs.ITEMCLASS != undefined) dictData.value.ITEMCLASS = toRaw(dictRefs.ITEMCLASS.value) || [] //细菌项目类别
|
|
||||||
if(dictRefs.GBDM != undefined) dictData.value.GBDM = toRaw(dictRefs.GBDM.value) || [] //国标代码
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//字典数据格式化方法
|
//字典数据格式化方法
|
||||||
@ -45,4 +41,4 @@ export const formatInstr = (v: string) => {
|
|||||||
return instrOptions.value.find((item: any) => item.yq == v.trim())?.yqmc;
|
return instrOptions.value.find((item: any) => item.yq == v.trim())?.yqmc;
|
||||||
}
|
}
|
||||||
|
|
||||||
export {dictData}
|
export { dictData, instrOptions }
|
||||||
@ -28,9 +28,9 @@ export const useCommonStore = defineStore('commonStore', {
|
|||||||
// 持久化配置
|
// 持久化配置
|
||||||
persist: {
|
persist: {
|
||||||
// 指定要持久化的状态字段
|
// 指定要持久化的状态字段
|
||||||
paths: ['fingerprint', 'defaultConfig',],
|
pick: ['fingerprint', 'defaultConfig'],
|
||||||
// 可选配置:自定义存储键名(默认是store的id)
|
// 可选配置:自定义存储键名(默认是store的id)
|
||||||
key: 'common_store',
|
// key: 'common_store',
|
||||||
// 可选配置:指定存储位置(默认是localStorage 也可以用sessionStorage)
|
// 可选配置:指定存储位置(默认是localStorage 也可以用sessionStorage)
|
||||||
storage: localStorage,
|
storage: localStorage,
|
||||||
}
|
}
|
||||||
|
|||||||
2
src/types/pinia.d.ts
vendored
2
src/types/pinia.d.ts
vendored
@ -9,7 +9,7 @@ declare module 'pinia' {
|
|||||||
|
|
||||||
// 定义持久化配置的类型(根据插件实际参数调整)
|
// 定义持久化配置的类型(根据插件实际参数调整)
|
||||||
interface PersistOptions {
|
interface PersistOptions {
|
||||||
paths?: string[]
|
pick?: string[]
|
||||||
key?: string
|
key?: string
|
||||||
storage?: Storage
|
storage?: Storage
|
||||||
}
|
}
|
||||||
@ -74,8 +74,8 @@
|
|||||||
<VxeTable :table-data="tableData" :loading="loading" :columns="columns"
|
<VxeTable :table-data="tableData" :loading="loading" :columns="columns"
|
||||||
:row-config="{ isHover: true, keyField: 'ybh' }" @current-change="rowHandle" size="small"
|
:row-config="{ isHover: true, keyField: 'ybh' }" @current-change="rowHandle" size="small"
|
||||||
:row-style="rowClassNameHd" :cell-style="cellStyleHd" class="mytable-style" ref="tableRef"
|
:row-style="rowClassNameHd" :cell-style="cellStyleHd" class="mytable-style" ref="tableRef"
|
||||||
@selection-change="selectionChange" :config="tableConfig" :enable-column-drag="true"
|
:scrollYConfig="{ enabled: true, rSize: 30, height: '100%', }" @selection-change="selectionChange"
|
||||||
@column-drag-end="handleColumnDragEnd">
|
:config="tableConfig" :enable-column-drag="true" @column-drag-end="handleColumnDragEnd">
|
||||||
<template #dy="{ row }">
|
<template #dy="{ row }">
|
||||||
<svg-icon v-if="row.zt != 1" icon-class="lvgou" />
|
<svg-icon v-if="row.zt != 1" icon-class="lvgou" />
|
||||||
</template>
|
</template>
|
||||||
@ -370,7 +370,6 @@ const handleColumnDragEnd = (data: any) => {
|
|||||||
|
|
||||||
// 左侧表格配置
|
// 左侧表格配置
|
||||||
const tableConfig = ref({
|
const tableConfig = ref({
|
||||||
height: '76.5vh', // 高度
|
|
||||||
// 复选框配置
|
// 复选框配置
|
||||||
checkboxConfig: {
|
checkboxConfig: {
|
||||||
// 可选配置项
|
// 可选配置项
|
||||||
@ -397,7 +396,7 @@ const rightColumns = ref([
|
|||||||
const rightTableConfig = ref({
|
const rightTableConfig = ref({
|
||||||
// stripe: true, // 斑马纹
|
// stripe: true, // 斑马纹
|
||||||
border: true, // 边框
|
border: true, // 边框
|
||||||
height: '', // 高度
|
height: '78vh', // 高度
|
||||||
highlightCurrentRow: true, // 高亮当前行
|
highlightCurrentRow: true, // 高亮当前行
|
||||||
})
|
})
|
||||||
|
|
||||||
@ -572,8 +571,6 @@ onMounted(async () => {
|
|||||||
getList()
|
getList()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
adjustTableHeight();
|
|
||||||
// 加载病人来源字典
|
// 加载病人来源字典
|
||||||
const dictRefs = await comDict('PT', 'HOS', 'ST');
|
const dictRefs = await comDict('PT', 'HOS', 'ST');
|
||||||
|
|
||||||
@ -590,22 +587,6 @@ const formatDict = (v: string, dictType: string) => {
|
|||||||
return dictData.value[dictType]?.find((item: any) => item.value == v)?.label || v;
|
return dictData.value[dictType]?.find((item: any) => item.value == v)?.label || v;
|
||||||
};
|
};
|
||||||
|
|
||||||
// 计算table高度
|
|
||||||
watch(showSearch, () => {
|
|
||||||
nextTick(() => {
|
|
||||||
adjustTableHeight();
|
|
||||||
})
|
|
||||||
}, { immediate: true });
|
|
||||||
|
|
||||||
function adjustTableHeight() {
|
|
||||||
if (compactForm.value) {
|
|
||||||
// 获取高度
|
|
||||||
heightForm.value = compactForm.value.offsetHeight;
|
|
||||||
tableConfig.value.height = `calc(80vh - ${heightForm.value}px)`; // 设置表格容器的高度
|
|
||||||
rightTableConfig.value.height = `calc(80vh - ${heightForm.value}px)`;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
const handletime = (val: Array<string>) => {
|
const handletime = (val: Array<string>) => {
|
||||||
// console.log('时间', val);
|
// console.log('时间', val);
|
||||||
// 校验日期格式
|
// 校验日期格式
|
||||||
@ -737,7 +718,7 @@ const printPdf = () => {
|
|||||||
|
|
||||||
<style scoped lang="scss">
|
<style scoped lang="scss">
|
||||||
.mytable-style {
|
.mytable-style {
|
||||||
height: 76.5vh;
|
height: 78vh;
|
||||||
}
|
}
|
||||||
|
|
||||||
.custom-row-class {
|
.custom-row-class {
|
||||||
|
|||||||
@ -93,8 +93,9 @@
|
|||||||
@column-drag-end="handleColumnDragEnd"> -->
|
@column-drag-end="handleColumnDragEnd"> -->
|
||||||
<VxeTable :table-data="tableData" :loading="loading" :columns="columns"
|
<VxeTable :table-data="tableData" :loading="loading" :columns="columns"
|
||||||
:row-config="{ isHover: true, keyField: 'ybh' }" @current-change="rowHandle" size="small"
|
:row-config="{ isHover: true, keyField: 'ybh' }" @current-change="rowHandle" size="small"
|
||||||
class="mytable-style" ref="tableRefs" :cell-style="cellStyleHd" @selection-change="selectionChange"
|
:scrollYConfig="{ enabled: true, rSize: 30, height: '100%', }" class="mytable-style" ref="tableRefs"
|
||||||
:config="tableConfig" :enable-column-drag="true" @column-drag-end="handleColumnDragEnd">
|
:cell-style="cellStyleHd" @selection-change="selectionChange" :config="tableConfig" :enable-column-drag="true"
|
||||||
|
@column-drag-end="handleColumnDragEnd">
|
||||||
<template #dybz="{ row }">
|
<template #dybz="{ row }">
|
||||||
<svg-icon v-if="row.dybz == 1" icon-class="lvgou" />
|
<svg-icon v-if="row.dybz == 1" icon-class="lvgou" />
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@ -78,10 +78,10 @@
|
|||||||
<!-- 右侧区域-->
|
<!-- 右侧区域-->
|
||||||
<el-col :span="10">
|
<el-col :span="10">
|
||||||
<tabView :tabList="tabList" v-model:activeTab="activeTab" @update:active-tab="updateActive" />
|
<tabView :tabList="tabList" v-model:activeTab="activeTab" @update:active-tab="updateActive" />
|
||||||
<KeepAlive>
|
<!-- <KeepAlive> -->
|
||||||
<component class="tabDiv" ref="tableTabRef" :is="activeTabN" :formData="selectRow" v-model="modelParam"
|
<component class="tabDiv" ref="tableTabRef" :is="activeTabN" :formData="selectRow" v-model="modelParam"
|
||||||
@refreshTabData="rowChange"></component>
|
@refreshTabData="rowChange"></component>
|
||||||
</KeepAlive>
|
<!-- </KeepAlive> -->
|
||||||
<BatchInstrVs v-model="batchInstrVsModel" />
|
<BatchInstrVs v-model="batchInstrVsModel" />
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
@ -461,7 +461,7 @@ const changeActiveTab = () => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
onMounted(async () => {
|
onMounted(async () => {
|
||||||
getDictData('XMGL', 'ITEMCLASS', 'YQDL', 'UT', 'MD', 'GBDM', 'YQ');
|
getDictData('XMGL', 'ITEMCLASS', 'YQDL', 'UT', 'MD', 'GBDM', 'YQ', 'VA', 'LF', 'BT', 'SLZQ');
|
||||||
getList()
|
getList()
|
||||||
getYqConfig();
|
getYqConfig();
|
||||||
})
|
})
|
||||||
|
|||||||
@ -9,12 +9,12 @@
|
|||||||
@column-drag-end="handleColumnDragEnd" :config="tableConfig" @row-click="handRowClick">
|
@column-drag-end="handleColumnDragEnd" :config="tableConfig" @row-click="handRowClick">
|
||||||
<template #qz="{ row }">
|
<template #qz="{ row }">
|
||||||
<el-select v-model="row.qz" clearable allow-create filterable default-first-option class="full-width-input">
|
<el-select v-model="row.qz" clearable allow-create filterable default-first-option class="full-width-input">
|
||||||
<el-option v-for="item in qzOptions" :key="item.value" :label="item.label" :value="item.value"></el-option>
|
<el-option v-for="item in dictData.VA" :key="item.value" :label="item.label" :value="item.value"></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</template>
|
</template>
|
||||||
<template #jgbz="{ row }">
|
<template #jgbz="{ row }">
|
||||||
<el-select v-model="row.jgbz" clearable class="full-width-input">
|
<el-select v-model="row.jgbz" clearable class="full-width-input">
|
||||||
<el-option v-for="item in jgbzOptions" :key="item.value" :label="item.label" :value="item.value"></el-option>
|
<el-option v-for="item in dictData.LF" :key="item.value" :label="item.label" :value="item.value"></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</template>
|
</template>
|
||||||
<template #srm="{ row }">
|
<template #srm="{ row }">
|
||||||
@ -34,6 +34,10 @@ import { delXmValNewService } from '@/api/liswork/labItem/labItemApi'
|
|||||||
const modelParam = defineModel<any>()
|
const modelParam = defineModel<any>()
|
||||||
const emit = defineEmits(['refreshTabData'])
|
const emit = defineEmits(['refreshTabData'])
|
||||||
|
|
||||||
|
watch(() => modelParam.value.commonlyValuesData, () => {
|
||||||
|
selectRow.value = null
|
||||||
|
})
|
||||||
|
|
||||||
const tableRef = ref<any>();
|
const tableRef = ref<any>();
|
||||||
const columns = ref([
|
const columns = ref([
|
||||||
{ prop: 'qz', label: '取值', visible: true, align: 'center', slot: 'qz', showOverflowTooltip: false },
|
{ prop: 'qz', label: '取值', visible: true, align: 'center', slot: 'qz', showOverflowTooltip: false },
|
||||||
@ -46,9 +50,7 @@ const tableConfig = ref({
|
|||||||
highlightCurrentRow: true, // 高亮当前行
|
highlightCurrentRow: true, // 高亮当前行
|
||||||
// cellStyle: cellStyleHd
|
// cellStyle: cellStyleHd
|
||||||
})
|
})
|
||||||
const qzOptions = ref()
|
|
||||||
const selectRow = ref()
|
const selectRow = ref()
|
||||||
const jgbzOptions = ref()
|
|
||||||
|
|
||||||
//退拽属性
|
//退拽属性
|
||||||
const handleColumnDragEnd = (data: any) => {
|
const handleColumnDragEnd = (data: any) => {
|
||||||
@ -90,12 +92,6 @@ const handRowClick = (row: any) => {
|
|||||||
selectRow.value = row
|
selectRow.value = row
|
||||||
}
|
}
|
||||||
|
|
||||||
onActivated(async () => {
|
|
||||||
//默认取值
|
|
||||||
await getDictData('VA', 'LF')
|
|
||||||
qzOptions.value = dictData.value.VA
|
|
||||||
jgbzOptions.value = dictData.value.LF
|
|
||||||
})
|
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|||||||
@ -1,15 +1,14 @@
|
|||||||
<template>
|
<template>
|
||||||
<!-- 计算项目表达式生成向导 -->
|
<!-- 计算项目表达式生成向导 -->
|
||||||
<el-dialog :model-value="visible" @update:model-value="handleVisibleChange" title="计算项目表达式生成向导" width="600px"
|
<el-dialog :model-value="visible" @update:model-value="handleVisibleChange" title="计算项目表达式生成向导" width="600px"
|
||||||
@close="onClose" @open="onOpen">
|
:close-on-click-modal="false" :draggable="true" @close="onClose" @open="onOpen">
|
||||||
<el-row class="input-text">
|
<el-row class="input-text">
|
||||||
<el-input type="textarea" v-model="inputText"></el-input>
|
<el-input type="textarea" v-model="inputText"></el-input>
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row>
|
<el-row>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<CustomTable ref="tableRefs" :data="tableData" :columns="columns" :config="tableConfig"
|
<CustomTable ref="tableRefs" :data="tableData" :columns="columns" :config="tableConfig" @row-click="rowHandle"
|
||||||
@row-click="rowHandle" :enableColumnDrag="true"
|
:enableColumnDrag="true" @column-drag-end="handleColumnDragEnd" />
|
||||||
@column-drag-end="handleColumnDragEnd"/>
|
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12" class="right">
|
<el-col :span="12" class="right">
|
||||||
<el-button type="" @click="bClickAdd">+ 加</el-button>
|
<el-button type="" @click="bClickAdd">+ 加</el-button>
|
||||||
@ -154,6 +153,7 @@ const onOpen = async () => {
|
|||||||
.input-text {
|
.input-text {
|
||||||
margin-bottom: 10px;
|
margin-bottom: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
// .right {
|
// .right {
|
||||||
// margin-left: 2px;
|
// margin-left: 2px;
|
||||||
// }
|
// }
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<!-- 危急值特定判断条件 -->
|
<!-- 危急值特定判断条件 -->
|
||||||
<el-dialog title="危急值特定判断条件" width="700px" v-model="visible" @open="onOpen">
|
<el-dialog title="危急值特定判断条件" width="700px" v-model="visible" :close-on-click-modal="false" :draggable="true"
|
||||||
|
@open="onOpen" @close="onClose">
|
||||||
<el-row class="row-up">
|
<el-row class="row-up">
|
||||||
<div class="top-button">
|
<div class="top-button">
|
||||||
<el-button type="primary" @click="bClickAdd">增加</el-button>
|
<el-button type="primary" @click="bClickAdd">增加</el-button>
|
||||||
@ -8,8 +9,7 @@
|
|||||||
<el-button type="primary" @click="bClickSave">保存</el-button>
|
<el-button type="primary" @click="bClickSave">保存</el-button>
|
||||||
</div>
|
</div>
|
||||||
<CustomTable ref="tableRefs" :data="tableDataUp" :columns="columnsUp" :config="tableConfigUp"
|
<CustomTable ref="tableRefs" :data="tableDataUp" :columns="columnsUp" :config="tableConfigUp"
|
||||||
@row-click="rowHandleUp" :enableColumnDrag="true"
|
@row-click="rowHandleUp" :enableColumnDrag="true" @column-drag-end="handleColumnDragEnd">
|
||||||
@column-drag-end="handleColumnDragEnd">
|
|
||||||
<template #samplecondition="{ row }">
|
<template #samplecondition="{ row }">
|
||||||
<el-input v-model="row.samplecondition" class="full-width-input"></el-input>
|
<el-input v-model="row.samplecondition" class="full-width-input"></el-input>
|
||||||
</template>
|
</template>
|
||||||
@ -20,9 +20,9 @@
|
|||||||
</el-row>
|
</el-row>
|
||||||
<el-row class="row-down">
|
<el-row class="row-down">
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<CustomTable ref="tableRefs" :data="tableDataDown" :columns="columnsDown" :config="tableConfigDown"
|
<VxeTable ref="tableRefs" :data="tableDataDown" :columns="columnsDown" class="mytable-style"
|
||||||
@row-click="rowHandleDown" :enableColumnDrag="true"
|
:scrollYConfig="{ enabled: true, rSize: 30, height: '400', }" @current-change="rowHandleDown"
|
||||||
@column-drag-end="handleColumnDragEnd"/>
|
:enableColumnDrag="true" @column-drag-end="handleColumnDragEnd" />
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12" class="rigth-col">
|
<el-col :span="12" class="rigth-col">
|
||||||
<el-button type="primary" @click="bClickDept" size="small">科室</el-button>
|
<el-button type="primary" @click="bClickDept" size="small">科室</el-button>
|
||||||
@ -31,7 +31,8 @@
|
|||||||
<el-button type="primary" @click="bClickResult" size="small">结果</el-button>
|
<el-button type="primary" @click="bClickResult" size="small">结果</el-button>
|
||||||
<el-button type="primary" @click="bClickSample" size="small">样本状态</el-button>
|
<el-button type="primary" @click="bClickSample" size="small">样本状态</el-button>
|
||||||
<h4>1公式举例:科室诊断条件:[科室] = '血液科' or [诊断] ='白血病' 当前结果判断条件:[结果] > 20 or [结果] <2 or [结果] ='阳性'</h4>
|
<h4>1公式举例:科室诊断条件:[科室] = '血液科' or [诊断] ='白血病' 当前结果判断条件:[结果] > 20 or [结果] <2 or [结果] ='阳性'</h4>
|
||||||
<h4>2公式举例:科室诊断条件(其他项目代号如):[WBC] = '阳性' or [WBC] > 20 or [WBC] <20 当前结果判断条件: [结果] > 20 or [结果] <2</h4>
|
<h4>2公式举例:科室诊断条件(其他项目代号如):[WBC] = '阳性' or [WBC] > 20 or [WBC] <20 当前结果判断条件: [结果] > 20 or [结果] <2
|
||||||
|
</h4>
|
||||||
<h4>3公式举例:只发一次危急值病人条件:[初报] = 'brdh' and [初报] = 'brxm' 当前结果判断条件:[结果] > 20 or [结果] <2 or [结果] ='阳性'</h4>
|
<h4>3公式举例:只发一次危急值病人条件:[初报] = 'brdh' and [初报] = 'brxm' 当前结果判断条件:[结果] > 20 or [结果] <2 or [结果] ='阳性'</h4>
|
||||||
<h4>只要符合科室或诊断条件的,就不会再断默认的危机值标准了</h4>
|
<h4>只要符合科室或诊断条件的,就不会再断默认的危机值标准了</h4>
|
||||||
<h4>注意科室用中文,结果如果是字符型用单引号引起来</h4>
|
<h4>注意科室用中文,结果如果是字符型用单引号引起来</h4>
|
||||||
@ -43,6 +44,7 @@
|
|||||||
|
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import CustomTable from '@/components/elTable/index.vue'
|
import CustomTable from '@/components/elTable/index.vue'
|
||||||
|
import VxeTable from '@/components/vxeTable/index.vue'
|
||||||
import { queryXmInfoNew, queryXmAlarmdetailNew, addXmAlarmdetailNew, delXmAlarmdetailNew } from '@/api/liswork/labItem/labItemApi'
|
import { queryXmInfoNew, queryXmAlarmdetailNew, addXmAlarmdetailNew, delXmAlarmdetailNew } from '@/api/liswork/labItem/labItemApi'
|
||||||
import { XmAlarmdetailNew } from '@/types'
|
import { XmAlarmdetailNew } from '@/types'
|
||||||
import { ElMessageBox, ElMessage } from 'element-plus'
|
import { ElMessageBox, ElMessage } from 'element-plus'
|
||||||
@ -55,13 +57,18 @@ const columnsUp = ref([
|
|||||||
])
|
])
|
||||||
|
|
||||||
const columnsDown = ref([
|
const columnsDown = ref([
|
||||||
{ prop: 'xmdh', label: '项目代号', align: 'center', visible: true, width: 100 },
|
{ field: 'xmdh', title: '项目代号', align: 'center', visible: true, width: 100, resizable: true },
|
||||||
{ prop: 'xmmc', label: '项目名称', align: 'center', visible: true, width: 220 }
|
{ field: 'xmmc', title: '项目名称', align: 'center', visible: true, width: 220, resizable: true }
|
||||||
])
|
])
|
||||||
|
|
||||||
const tableDataUp = ref<Array<XmAlarmdetailNew>>([])
|
const tableDataUp = ref<Array<XmAlarmdetailNew>>([])
|
||||||
const tableDataDown = ref()
|
const tableDataDown = ref([])
|
||||||
const selectRowUp = ref<XmAlarmdetailNew>()
|
const selectRowUp = ref<XmAlarmdetailNew>({
|
||||||
|
xmid: 0,
|
||||||
|
seq: 0,
|
||||||
|
samplecondition: '',
|
||||||
|
resultcondition: ''
|
||||||
|
})
|
||||||
const visible = defineModel()
|
const visible = defineModel()
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
formData: {
|
formData: {
|
||||||
@ -81,15 +88,7 @@ const tableConfigUp = ref(
|
|||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|
||||||
const tableConfigDown = ref(
|
|
||||||
{
|
|
||||||
// stripe: true, // 斑马纹
|
|
||||||
border: true, // 边框
|
|
||||||
height: '400', // 高度
|
|
||||||
highlightCurrentRow: true, // 高亮当前行
|
|
||||||
fit: true
|
|
||||||
}
|
|
||||||
)
|
|
||||||
|
|
||||||
//序号最大值
|
//序号最大值
|
||||||
const maxXh = computed(() => {
|
const maxXh = computed(() => {
|
||||||
@ -114,10 +113,18 @@ const rowHandleDown = (row:any) => {
|
|||||||
|
|
||||||
|
|
||||||
const onOpen = async () => {
|
const onOpen = async () => {
|
||||||
|
const res = await queryXmAlarmdetailNew(props.formData.xmid);
|
||||||
|
tableDataUp.value = res.data;
|
||||||
|
if (!tableDataDown.value.length) {
|
||||||
let res = await queryXmInfoNew(props.formData.xmgl);
|
let res = await queryXmInfoNew(props.formData.xmgl);
|
||||||
tableDataDown.value = res.data;
|
tableDataDown.value = res.data;
|
||||||
res = await queryXmAlarmdetailNew(props.formData.xmid);
|
}
|
||||||
tableDataUp.value = res.data;
|
}
|
||||||
|
|
||||||
|
|
||||||
|
const onClose = () => {
|
||||||
|
tableDataUp.value = []
|
||||||
|
selectRowUp.value = { xmid: 0, seq: 0, samplecondition: '', resultcondition: '' }
|
||||||
}
|
}
|
||||||
|
|
||||||
const bClickAdd = () => {
|
const bClickAdd = () => {
|
||||||
@ -130,29 +137,36 @@ const bClickAdd = () => {
|
|||||||
tableDataUp.value.push(newData);
|
tableDataUp.value.push(newData);
|
||||||
}
|
}
|
||||||
|
|
||||||
const bClickDel = async () => {
|
const bClickDel = () => {
|
||||||
if(selectRowUp.value){
|
if (!selectRowUp.value.xmid) return ElMessage.warning('请选择要删除的行!')
|
||||||
await ElMessageBox.confirm('是否要删除选中的数据?','Warning',
|
ElMessageBox.confirm('是否要删除选中的数据?', '警告',
|
||||||
{
|
{
|
||||||
confirmButtonText: '确认',
|
confirmButtonText: '确认',
|
||||||
cancelButtonText: '取消',
|
cancelButtonText: '取消',
|
||||||
type: 'warning',
|
type: 'warning',
|
||||||
});
|
}).then(() => {
|
||||||
const xmid = selectRowUp.value.xmid
|
const xmid = selectRowUp.value.xmid
|
||||||
const seq = selectRowUp.value.seq
|
const seq = selectRowUp.value.seq
|
||||||
await delXmAlarmdetailNew(xmid,seq)
|
delXmAlarmdetailNew(xmid, seq).then((res: any) => {
|
||||||
await queryXmAlarmdetailNew(props.formData.xmid);
|
if (res.code == 0) {
|
||||||
|
onOpen()
|
||||||
ElMessage.success('删除成功!')
|
ElMessage.success('删除成功!')
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
const bClickSave = () => {
|
||||||
|
const flag = tableDataUp.value.every((item: XmAlarmdetailNew) => item.samplecondition && item.resultcondition)
|
||||||
const bClickSave = async() => {
|
if (!flag) return ElMessage.warning('请检查填写科室或诊断条件和结果判断条件!')
|
||||||
await addXmAlarmdetailNew(tableDataUp.value);
|
addXmAlarmdetailNew(tableDataUp.value).then((res: any) => {
|
||||||
await queryXmAlarmdetailNew(props.formData.xmid);
|
if (res.code == 0) {
|
||||||
|
onOpen()
|
||||||
ElMessage.success('保存成功!')
|
ElMessage.success('保存成功!')
|
||||||
}
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
const bClickDept = () => {
|
const bClickDept = () => {
|
||||||
if (selectRowUp.value) {
|
if (selectRowUp.value) {
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<!-- 多行参考值配置界面 -->
|
<!-- 多行参考值配置界面 -->
|
||||||
<el-dialog v-model="dialogTableVisibleVal" @close="handleDialogClose" title="多行参考值" width="600px" align-center>
|
<el-dialog v-model="dialogTableVisibleVal" @close="handleDialogClose" title="多行参考值" width="600px" align-center
|
||||||
|
:close-on-click-modal="false" :draggable="true">
|
||||||
<el-form :model="formData" inline>
|
<el-form :model="formData" inline>
|
||||||
<el-row :gutter="10">
|
<el-row :gutter="10">
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
|
|||||||
@ -18,12 +18,15 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import CustomTable from '@/components/elTable/index.vue'
|
import CustomTable from '@/components/elTable/index.vue'
|
||||||
import { XmTextresultNew } from '@/types';
|
import { XmTextresultNew } from '@/types';
|
||||||
import { ElMessageBox } from 'element-plus';
|
import { ElMessage, ElMessageBox } from 'element-plus';
|
||||||
import { ref } from 'vue';
|
import { ref } from 'vue';
|
||||||
import { delXmTextresultNew } from '@/api/liswork/labItem/labItemApi';
|
import { delXmTextresultNew } from '@/api/liswork/labItem/labItemApi';
|
||||||
|
|
||||||
const modelParam = defineModel<any>()
|
const modelParam = defineModel<any>()
|
||||||
|
|
||||||
|
watch(() => modelParam.value.commonDescriptionsData, (val) => {
|
||||||
|
selectRow.value = null
|
||||||
|
})
|
||||||
const tableRef = ref();
|
const tableRef = ref();
|
||||||
const columns = ref([
|
const columns = ref([
|
||||||
{ prop: 'textresult', label: '文字描述', visible: true, align: 'center', slot: 'textresult', width: 500, showOverflowTooltip: false },
|
{ prop: 'textresult', label: '文字描述', visible: true, align: 'center', slot: 'textresult', width: 500, showOverflowTooltip: false },
|
||||||
@ -59,20 +62,22 @@ const onAddClick = () => {
|
|||||||
const newData: XmTextresultNew = {
|
const newData: XmTextresultNew = {
|
||||||
xmid: modelParam.value.basicData.xmid,
|
xmid: modelParam.value.basicData.xmid,
|
||||||
xmdh: modelParam.value.basicData.xmdh,
|
xmdh: modelParam.value.basicData.xmdh,
|
||||||
xh: maxXh.value
|
xh: maxXh.value,
|
||||||
|
textresult: ''
|
||||||
}
|
}
|
||||||
modelParam.value.commonDescriptionsData.push(newData)
|
modelParam.value.commonDescriptionsData.push(newData)
|
||||||
}
|
}
|
||||||
|
|
||||||
const onDelClick = async () => {
|
const onDelClick = () => {
|
||||||
if (selectRow.value) {
|
if (!selectRow.value) return ElMessage.warning('请选择要删除的数据!');
|
||||||
await ElMessageBox.confirm('是否要删除选中的数据?', '警告',
|
ElMessageBox.confirm('是否要删除选中的数据?', '警告',
|
||||||
{ confirmButtonText: 'OK', cancelButtonText: 'Cancel', type: 'warning', });
|
{ confirmButtonText: '确定', cancelButtonText: '取消', type: 'warning', }).then(() => {
|
||||||
//tableList.value = tableList.value.filter((item:any) => item.xh != selectRow.value.xh)
|
delXmTextresultNew({ xmid: modelParam.value.basicData.xmid, xh: selectRow.value.xh }).then((res: any) => {
|
||||||
await delXmTextresultNew({ xmid: modelParam.value.basicData.xmid, xh: selectRow.value.xh })
|
if (res.code == 0) {
|
||||||
emit('refreshTabData', modelParam.value.basicData)
|
modelParam.value.commonDescriptionsData = modelParam.value.commonDescriptionsData.filter((item: any) => item.xh != selectRow.value.xh)
|
||||||
}
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@ -24,11 +24,11 @@ const props = defineProps({
|
|||||||
const tableRef = ref<any>(null);
|
const tableRef = ref<any>(null);
|
||||||
const dataList = ref();
|
const dataList = ref();
|
||||||
const columns = ref([
|
const columns = ref([
|
||||||
{ prop: 'reserve', label: '类别', visible: true, align: 'center', width: 200 },
|
{ prop: 'reserve', label: '类别', visible: true, align: 'center', },
|
||||||
{ prop: 'textresult', label: '描述', visible: true, align: 'center', width: 100 },
|
{ prop: 'textresult', label: '描述', visible: true, align: 'center', },
|
||||||
{ prop: 'yxjs', label: '医学解释', visible: true, align: 'center', width: 100 },
|
{ prop: 'yxjs', label: '医学解释', visible: true, align: 'center', },
|
||||||
{ prop: 'cjyy', label: '常见原因,', visible: true, align: 'center', width: 100 },
|
{ prop: 'cjyy', label: '常见原因', visible: true, align: 'center', },
|
||||||
{ prop: 'zd', label: '指导,', visible: true, align: 'center', width: 100 },
|
{ prop: 'zd', label: '指导', visible: true, align: 'center', },
|
||||||
]);
|
]);
|
||||||
const tableConfig = ref({
|
const tableConfig = ref({
|
||||||
border: true, // 边框
|
border: true, // 边框
|
||||||
|
|||||||
@ -29,12 +29,13 @@
|
|||||||
</el-select>
|
</el-select>
|
||||||
</template>
|
</template>
|
||||||
<template #bblx="{ row }">
|
<template #bblx="{ row }">
|
||||||
<SelectTable v-model:data="row.bblx" :fields="fields" :tableData="bblxOptions" label="label" value="label"
|
<SelectTable v-model:data="row.bblx" :fields="fields" :tableData="dictData.BT" label="label" value="label"
|
||||||
objKey="label" :border="true" />
|
objKey="label" :border="true" />
|
||||||
</template>
|
</template>
|
||||||
<template #slzq="{ row }">
|
<template #slzq="{ row }">
|
||||||
<el-select v-model="row.slzq" clearable>
|
<el-select v-model="row.slzq" clearable>
|
||||||
<el-option v-for="item in optionsSLZQ" :key="item.value" :label="item.label" :value="item.value"></el-option>
|
<el-option v-for="item in dictData.SLZQ" :key="item.value" :label="item.label"
|
||||||
|
:value="item.value"></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</template>
|
</template>
|
||||||
<template #zd="{ row }">
|
<template #zd="{ row }">
|
||||||
@ -91,7 +92,6 @@ const optionsNLDW = [
|
|||||||
{ value: '4', label: '时' },
|
{ value: '4', label: '时' },
|
||||||
]
|
]
|
||||||
|
|
||||||
const optionsSLZQ = ref<any>([])
|
|
||||||
|
|
||||||
const fields = ref(
|
const fields = ref(
|
||||||
[
|
[
|
||||||
@ -99,10 +99,6 @@ const fields = ref(
|
|||||||
{ prop: 'label', label: '名称', width: 150, enablePinyinSearch: true },
|
{ prop: 'label', label: '名称', width: 150, enablePinyinSearch: true },
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
const bblxOptions = ref<Array<{ zddh: string; zdmc: string }>>([]);
|
|
||||||
|
|
||||||
const tableRefUp = ref<any>();
|
|
||||||
const tableRefDown = ref<any>();
|
|
||||||
// const dataListUp = ref();
|
// const dataListUp = ref();
|
||||||
const dataListDown = ref();
|
const dataListDown = ref();
|
||||||
const columnsUp = ref([
|
const columnsUp = ref([
|
||||||
@ -183,13 +179,6 @@ const rowClick = (row: any) => {
|
|||||||
selectRow.value = row
|
selectRow.value = row
|
||||||
}
|
}
|
||||||
|
|
||||||
onActivated(async () => {
|
|
||||||
//加载字典数据
|
|
||||||
await getDictData('BT', 'SLZQ')
|
|
||||||
bblxOptions.value = dictData.value.BT || []
|
|
||||||
optionsSLZQ.value = dictData.value.SLZQ || []
|
|
||||||
})
|
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -8,7 +8,8 @@
|
|||||||
<CustomTable ref="tableRef" :data="modelParam.userInstrData" :columns="columns" :enable-column-drag="true"
|
<CustomTable ref="tableRef" :data="modelParam.userInstrData" :columns="columns" :enable-column-drag="true"
|
||||||
@column-drag-end="handleColumnDragEnd" :config="tableConfig" @row-click="onRowClick">
|
@column-drag-end="handleColumnDragEnd" :config="tableConfig" @row-click="onRowClick">
|
||||||
<template #yq="{ row }">
|
<template #yq="{ row }">
|
||||||
<YQSelectTable v-model:data="row.yq" placeholder="请选择仪器名称" class="full-width-input" />
|
<SelectTable v-model:data="row.yq" :fields="yqFields" :tableData="instrOptions" label="yqmc" value="yq"
|
||||||
|
objKey="yq" :border="true" placeholder="请选择仪器" :clearable="false" class="full-width-input" />
|
||||||
</template>
|
</template>
|
||||||
<template #xs="{ row }">
|
<template #xs="{ row }">
|
||||||
<el-input v-model="row.xs" class="full-width-input" />
|
<el-input v-model="row.xs" class="full-width-input" />
|
||||||
@ -33,10 +34,10 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import CustomTable from '@/components/elTable/index.vue'
|
import CustomTable from '@/components/elTable/index.vue'
|
||||||
import { XmInfoVs } from '@/types';
|
import { XmInfoVs } from '@/types';
|
||||||
import YQSelectTable from '@/components/SelectTable/YQSelectTable/index.vue'
|
import SelectTable from '@/components/SelectTable/index.vue'
|
||||||
import { ElMessage, ElMessageBox } from 'element-plus'
|
import { ElMessage, ElMessageBox } from 'element-plus'
|
||||||
import { deleteXmInfoVs } from '@/api/liswork/labItem/labItemApi';
|
import { deleteXmInfoVs } from '@/api/liswork/labItem/labItemApi';
|
||||||
|
import { getYqData, instrOptions } from '@/hooks'
|
||||||
|
|
||||||
const modelParam = defineModel<any>()
|
const modelParam = defineModel<any>()
|
||||||
const tableRef = ref<any>();
|
const tableRef = ref<any>();
|
||||||
@ -55,6 +56,13 @@ const tableConfig = ref({
|
|||||||
highlightCurrentRow: true, // 高亮当前行
|
highlightCurrentRow: true, // 高亮当前行
|
||||||
// cellStyle: cellStyleHd
|
// cellStyle: cellStyleHd
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
|
const yqFields = ref([
|
||||||
|
{ prop: 'yq', label: '代号', width: 80, enablePinyinSearch: true },
|
||||||
|
{ prop: 'yqmc', label: '名称', width: 150, enablePinyinSearch: true },
|
||||||
|
])
|
||||||
|
|
||||||
const selectRow = ref<XmInfoVs>({
|
const selectRow = ref<XmInfoVs>({
|
||||||
yq: '',
|
yq: '',
|
||||||
xmid: 0
|
xmid: 0
|
||||||
@ -103,11 +111,9 @@ const getDyckz = (row: XmInfoVs) => {
|
|||||||
} else {
|
} else {
|
||||||
return `${row.ckxx || ''}--${row.cksx || ''}`;
|
return `${row.ckxx || ''}--${row.cksx || ''}`;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
onActivated(() => {
|
onMounted(() => {
|
||||||
|
getYqData();
|
||||||
})
|
});
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
@ -67,7 +67,7 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { ref, defineProps, defineEmits, nextTick, watch } from 'vue'
|
import { ref, nextTick, watch } from 'vue'
|
||||||
import { ElMessage } from 'element-plus'
|
import { ElMessage } from 'element-plus'
|
||||||
|
|
||||||
// 定义下拉选项类型
|
// 定义下拉选项类型
|
||||||
|
|||||||
@ -151,14 +151,13 @@ const mbStore = useCommonStore();
|
|||||||
const aotuSize = classCom.useAutoSize();
|
const aotuSize = classCom.useAutoSize();
|
||||||
import { initWebSocket, sendWebSocketMessage, closeWebSocket, getWebSocketState } from '@/utils/webSocket';
|
import { initWebSocket, sendWebSocketMessage, closeWebSocket, getWebSocketState } from '@/utils/webSocket';
|
||||||
import dayjs from 'dayjs';
|
import dayjs from 'dayjs';
|
||||||
|
|
||||||
const previewShow = ref(false);
|
const previewShow = ref(false);
|
||||||
const lbFlag = ref(false);
|
const lbFlag = ref(false);
|
||||||
const queryParams = ref({
|
const queryParams = ref({
|
||||||
jyrq: dayjs().format('YYYY-MM-DD'), //'2025-08-20'
|
jyrq: dayjs().format('YYYY-MM-DD'), //'2025-08-20'
|
||||||
ybh: '1',
|
ybh: '1',
|
||||||
instrGroup: mbStore.defaultConfig.lisgroupid,
|
instrGroup: mbStore.defaultConfig.lisgroupid || 'ALL',
|
||||||
yq: mbStore.defaultConfig.defaultinstr,
|
yq: mbStore.defaultConfig.defaultinstr || '1',
|
||||||
problemId: 0,
|
problemId: 0,
|
||||||
days: 0,
|
days: 0,
|
||||||
yhdh: ''
|
yhdh: ''
|
||||||
@ -382,7 +381,6 @@ const lastRow: any = ref({})
|
|||||||
|
|
||||||
// 批量扫码ybh同步样本编号
|
// 批量扫码ybh同步样本编号
|
||||||
const ybhChangeTb = (val: string) => {
|
const ybhChangeTb = (val: string) => {
|
||||||
console.log('val==>', val);
|
|
||||||
queryParams.value.ybh = val
|
queryParams.value.ybh = val
|
||||||
handleQuery();
|
handleQuery();
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="table-container">
|
<div class="table-container">
|
||||||
<ContextMenu :items="contextMenuItems" @select="handleMenuSelect" menu-width="200">
|
<ContextMenu :items="contextMenuItems" @select="handleMenuSelect" menu-width="200">
|
||||||
<CommonTable :table-data="labPatList" :loading="loading" :columns="tableColumns" :dict-data="dictData"
|
<CommonTable :table-data="labPatList" :loading="loading" :columns="tableColumns"
|
||||||
:row-config="{ isHover: true, keyField: 'ybh' }" @current-change="handleRowClick" size="small"
|
:row-config="{ isHover: true, keyField: 'ybh' }" @current-change="handleRowClick" size="small"
|
||||||
:scrollYConfig="{ enabled: true, rSize: 30, height: '100%', }" :row-style="rowStyle" :cell-style="cellStyle"
|
:scrollYConfig="{ enabled: true, rSize: 30, height: '100%', }" :row-style="rowStyle" :cell-style="cellStyle"
|
||||||
class="mytable-style" ref="tableRef" :enable-column-drag="true" @column-drag-end="handleColumnDragEnd">
|
class="mytable-style" ref="tableRef" :enable-column-drag="true" @column-drag-end="handleColumnDragEnd">
|
||||||
|
|||||||
@ -132,22 +132,6 @@ const radioChange = (val: string) => {
|
|||||||
}
|
}
|
||||||
deptOptions.value = result
|
deptOptions.value = result
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// 默认展开第一个一级节点的子级
|
|
||||||
nextTick(() => {
|
|
||||||
if (deptOptions.value.length > 0) {
|
|
||||||
const firstLevelNode = deptOptions.value[0]
|
|
||||||
if (firstLevelNode && firstLevelNode.children && firstLevelNode.children.length > 0) {
|
|
||||||
expandedKeys.value = [firstLevelNode.id]
|
|
||||||
const firstChildNode = firstLevelNode.children[0]
|
|
||||||
queryParams.value.yq = firstChildNode.id
|
|
||||||
yqmc.value = firstChildNode.label
|
|
||||||
|
|
||||||
deptTreeRef.value?.setCurrentKey(firstChildNode.id)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// ========== 树操作核心方法 ==========
|
// ========== 树操作核心方法 ==========
|
||||||
@ -222,8 +206,23 @@ const getDeptTree = async (): Promise<void> => {
|
|||||||
const response = await paramTree() as ParamTreeResponse
|
const response = await paramTree() as ParamTreeResponse
|
||||||
if (response.code === "0" && response.data) {
|
if (response.code === "0" && response.data) {
|
||||||
treeData.value = response.data
|
treeData.value = response.data
|
||||||
|
|
||||||
radioChange('1')
|
radioChange('1')
|
||||||
|
if (!expandedKeys.value.length) {
|
||||||
|
// 默认展开第一个一级节点的子级
|
||||||
|
nextTick(() => {
|
||||||
|
if (deptOptions.value.length > 0) {
|
||||||
|
const firstLevelNode = deptOptions.value[0]
|
||||||
|
if (firstLevelNode && firstLevelNode.children && firstLevelNode.children.length > 0) {
|
||||||
|
expandedKeys.value = [firstLevelNode.id]
|
||||||
|
const firstChildNode = firstLevelNode.children[0]
|
||||||
|
queryParams.value.yq = firstChildNode.id
|
||||||
|
yqmc.value = firstChildNode.label
|
||||||
|
|
||||||
|
deptTreeRef.value?.setCurrentKey(firstChildNode.id)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
ElMessage.warning(response.msg || "获取树数据失败")
|
ElMessage.warning(response.msg || "获取树数据失败")
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user