|
@@ -10,9 +10,17 @@
|
|
|
<el-radio-button :label="2">个人模板</el-radio-button>
|
|
|
<el-radio-button :label="3">科室模板</el-radio-button>
|
|
|
</el-radio-group>
|
|
|
- <el-table :data="jianChaFenLeiShuJu.data" :height="windowSize.h / 1.6" highlight-current-row stripe
|
|
|
- @row-click="dianJiaChaKanFenLei">
|
|
|
+ <el-table :data="jianChaFenLeiShuJu.data" :height="windowSize.h / 1.6" highlight-current-row stripe>
|
|
|
<el-table-column label="名称" prop="name"></el-table-column>
|
|
|
+ <el-table-column label="操作">
|
|
|
+ <template #default="scope">
|
|
|
+ <el-button size="small" split-button type="primary"
|
|
|
+ @click="ceBianLanDianJi('查看',scope.row)">查看
|
|
|
+ </el-button>
|
|
|
+ <el-button v-if="chaZhaoLeiXing !== 1" type="danger" @click="ceBianLanDianJi('删除',scope.row)">删除
|
|
|
+ </el-button>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
</el-table>
|
|
|
<el-pagination
|
|
|
:current-page="jianChaFenLeiShuJu.currentPage"
|
|
@@ -26,15 +34,30 @@
|
|
|
</el-aside>
|
|
|
<el-main>
|
|
|
<el-button @click="closeDialog">关闭</el-button>
|
|
|
+ <el-button :disabled="xuanZhongJianCha.data.length === 0" @click="baoCunJianChaShenQing">保存</el-button>
|
|
|
+ <el-button :disabled="xuanZhongJianCha.data.length === 0" @click="baoCunMuBan.dialog = true">存为模板</el-button>
|
|
|
<el-table :data="xuanZhongJianCha.data" :height="windowSize.h / 1.9">
|
|
|
<el-table-column label="项目编码" prop="orderCode"></el-table-column>
|
|
|
- <el-table-column label="项目名称" prop="orderName"></el-table-column>
|
|
|
- <el-table-column label="检查时间" prop="startTime"></el-table-column>
|
|
|
+ <el-table-column label="项目名称" prop="orderName" show-overflow-tooltip></el-table-column>
|
|
|
+ <el-table-column label="检查时间" prop="startTime">
|
|
|
+ <template #default="scope">
|
|
|
+ <span v-html="huanHangXianShi(scope.row.startTime)"></span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
<el-table-column label="执行科室" prop="execDeptName"></el-table-column>
|
|
|
- <el-table-column label="急诊标识" prop="jzFlag"></el-table-column>
|
|
|
- <el-table-column label="编辑">
|
|
|
+ <el-table-column label="急诊标识" prop="jzFlag">
|
|
|
<template #default="scope">
|
|
|
- <el-button icon="el-icon-edit" @click="dianJiBianJi(scope.row)">编辑</el-button>
|
|
|
+ <span v-if="scope.row.jzFlag === 1">√</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="体征信息" prop="reqTzComment" show-overflow-tooltip></el-table-column>
|
|
|
+ <el-table-column label="相关辅检结果" prop="reqOtherResult" show-overflow-tooltip></el-table-column>
|
|
|
+ <el-table-column label="临床诊断" prop="diagText" show-overflow-tooltip></el-table-column>
|
|
|
+ <el-table-column label="编辑" width="120">
|
|
|
+ <template #default="scope">
|
|
|
+ <el-button icon="el-icon-edit" round type="primary" @click="dianJiBianJi(scope.row)"></el-button>
|
|
|
+ <el-button icon="el-icon-delete" round type="danger"
|
|
|
+ @click="xuanZhongJianCha.data.splice(scope.$index,1)"></el-button>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
</el-table>
|
|
@@ -50,17 +73,60 @@
|
|
|
</el-table>
|
|
|
</el-dialog>
|
|
|
</el-dialog>
|
|
|
+ <el-dialog v-model="baoCunMuBan.dialog" center title="保存检查模板" width="30%">
|
|
|
+ <el-form ref="baoCunMuBanRef" :model="baoCunMuBan" :rules="baoCunMuBanJiaoYan" label-width="80px">
|
|
|
+ <el-row>
|
|
|
+ <el-col :span="24">
|
|
|
+ <el-form-item label="模板类型" prop="orderType">
|
|
|
+ <el-radio-group v-model="baoCunMuBan.orderType">
|
|
|
+ <el-radio-button :label="1">个人</el-radio-button>
|
|
|
+ <el-radio-button :label="2">科室</el-radio-button>
|
|
|
+ </el-radio-group>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="24">
|
|
|
+ <el-form-item label="名称" prop="tcName">
|
|
|
+ <el-input v-model="baoCunMuBan.tcName" clearable></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="24">
|
|
|
+ <el-form-item label="排序码" prop="sortNo">
|
|
|
+ <el-input-number v-model="baoCunMuBan.sortNo" :max="9999" :min="0"></el-input-number>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="24">
|
|
|
+ <el-form-item label="录入方式" prop="tcFlag">
|
|
|
+ <el-radio-group v-model="baoCunMuBan.tcFlag">
|
|
|
+ <el-radio-button :label="0">自动选择</el-radio-button>
|
|
|
+ <el-radio-button :label="1">手工录入</el-radio-button>
|
|
|
+ </el-radio-group>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="24">
|
|
|
+ <el-button @click="dianJiBaoCunMuBan(baoCunMuBanRef)">提交</el-button>
|
|
|
+ <el-button>关闭</el-button>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ </el-form>
|
|
|
+ </el-dialog>
|
|
|
<bian-ji-jian-cha-shen-qing ref="bianJiRef"></bian-ji-jian-cha-shen-qing>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
import {computed, onMounted, ref} from "vue";
|
|
|
-import {chaKanFenLeiXiangQing, huoQuJianChaMing} from "@/api/zhu-yuan-yi-sheng/jian-cha-shen-qing";
|
|
|
+import {
|
|
|
+ baoCunJianChaJianYanMuBan,
|
|
|
+ chaKanFenLeiXiangQing,
|
|
|
+ huoQuJianChaMing,
|
|
|
+ jianChaMuBanMing,
|
|
|
+ shanShuJianChaMuBan
|
|
|
+} from "@/api/zhu-yuan-yi-sheng/jian-cha-shen-qing";
|
|
|
import store from "@/store";
|
|
|
import {clone} from "@/utils/clone";
|
|
|
-import {ElMessage} from "element-plus";
|
|
|
+import {ElMessage, ElMessageBox} from "element-plus";
|
|
|
import {listNotBlank} from "@/utils/blank-utils";
|
|
|
import BianJiJianChaShenQing from "@/components/zhu-yuan-yi-sheng/jian-cha-shen-qing/BianJiJianChaShenQing.vue";
|
|
|
+import {huanHangXianShi} from "@/utils/date";
|
|
|
|
|
|
export default {
|
|
|
name: "TianJiaJianCha",
|
|
@@ -86,6 +152,16 @@ export default {
|
|
|
data: []
|
|
|
})
|
|
|
const bianJiRef = ref(null)
|
|
|
+ const baoCunMuBanRef = ref()
|
|
|
+ const baoCunMuBan = ref({
|
|
|
+ dialog: false,
|
|
|
+ tcName: '',
|
|
|
+ orderType: 1,
|
|
|
+ sortNo: 0,
|
|
|
+ tcFlag: 1,
|
|
|
+ fuGaiYuanShuJu: false,
|
|
|
+ chongFuMing: false
|
|
|
+ })
|
|
|
|
|
|
const dianJiLeiXingChaXun = () => {
|
|
|
huoQuJianChaMing(0, 1, chaZhaoLeiXing.value).then((res) => {
|
|
@@ -101,17 +177,6 @@ export default {
|
|
|
})
|
|
|
}
|
|
|
|
|
|
- const dianJiaChaKanFenLei = ({code, bwCode}) => {
|
|
|
- chaKanFenLeiXiangQing(code, chaZhaoLeiXing.value === 1 ? bwCode : 'mb').then((res) => {
|
|
|
- if (listNotBlank(res)) {
|
|
|
- xiangXiShuJu.value.data = res
|
|
|
- xiangXiShuJu.value.dialog = true
|
|
|
- } else {
|
|
|
- ElMessage.error('没有找到对应的数据')
|
|
|
- }
|
|
|
- })
|
|
|
- }
|
|
|
-
|
|
|
const xuanZhong = (val) => {
|
|
|
xuanZhongJianCha.value.daiXuanZhong = val
|
|
|
}
|
|
@@ -132,13 +197,77 @@ export default {
|
|
|
xiangXiShuJu.value.dialog = false
|
|
|
}
|
|
|
|
|
|
+ const dianJiBianJi = (row) => {
|
|
|
+ bianJiRef.value.daKaiBenDuiHua(row)
|
|
|
+ }
|
|
|
+
|
|
|
const closeDialog = () => {
|
|
|
tianJiaJianChaHuiHua.value = false
|
|
|
}
|
|
|
|
|
|
- const dianJiBianJi = (row) => {
|
|
|
- bianJiRef.value.dialog = true
|
|
|
- bianJiRef.value.bianJiJianChaShuJu = row
|
|
|
+ const baoCunJianChaShenQing = () => {
|
|
|
+ console.log(xuanZhongJianCha.value)
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ const ceBianLanDianJi = (name, {code, bwCode}) => {
|
|
|
+ if (name === '查看') {
|
|
|
+ chaKanFenLeiXiangQing(code, chaZhaoLeiXing.value === 1 ? bwCode : 'mb').then((res) => {
|
|
|
+ if (listNotBlank(res)) {
|
|
|
+ xiangXiShuJu.value.data = res
|
|
|
+ xiangXiShuJu.value.dialog = true
|
|
|
+ } else {
|
|
|
+ ElMessage.error('没有找到对应的数据')
|
|
|
+ }
|
|
|
+ })
|
|
|
+ } else if (name === '删除') {
|
|
|
+ ElMessageBox.confirm('是否要删除该检查模板', '提示', {
|
|
|
+ type: "warning"
|
|
|
+ }).then(() => {
|
|
|
+ shanShuJianChaMuBan(code, store.state.user.info.deptCode)
|
|
|
+ }).catch((e) => {
|
|
|
+
|
|
|
+ })
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ const baoCunMuBanJiaoYan = ref({
|
|
|
+ tcName: [{required: true, message: '名称不能为空', trigger: 'blur',},
|
|
|
+ {min: 1, max: 30, message: '长度在 1 到 30 个字', trigger: 'blur'}],
|
|
|
+ orderType: [{required: true, message: '名称不能为空', trigger: 'blur',}],
|
|
|
+ sortNo: [{required: true, message: '名称不能为空', trigger: 'blur',}],
|
|
|
+ tcFlag: [{required: true, message: '名称不能为空', trigger: 'blur',}],
|
|
|
+ })
|
|
|
+
|
|
|
+ const dianJiBaoCunMuBan = async (form) => {
|
|
|
+ if (!form) return
|
|
|
+ try {
|
|
|
+ await form.validate()
|
|
|
+ jianChaMuBanMing(baoCunMuBan.value.tcName, 3).then((res) => {
|
|
|
+ if (res) {
|
|
|
+ ElMessageBox.confirm('已经存在相同的模板名称,请选择覆盖历史数据还是新增相同名称的数据', '温馨提示', {
|
|
|
+ type: 'warning',
|
|
|
+ distinguishCancelAndClose: true,
|
|
|
+ confirmButtonText: '覆盖',
|
|
|
+ cancelButtonText: '取消',
|
|
|
+ }).then(() => {
|
|
|
+ faSongBaoCunMuBan(true)
|
|
|
+ }).catch((e) => {
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ } catch (e) {
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ const faSongBaoCunMuBan = (flag) => {
|
|
|
+ baoCunMuBan.value.fuGaiYuanShuJu = flag
|
|
|
+ baoCunMuBan.value.reqType = 3
|
|
|
+ baoCunMuBan.value.list = xuanZhongJianCha.value.data
|
|
|
+ baoCunJianChaJianYanMuBan(baoCunMuBan.value).then((res) => {
|
|
|
+ console.log(res)
|
|
|
+ })
|
|
|
}
|
|
|
|
|
|
onMounted(() => {
|
|
@@ -150,7 +279,6 @@ export default {
|
|
|
jianChaFenLeiShuJu,
|
|
|
jianChaFenLeiFenYe,
|
|
|
windowSize,
|
|
|
- dianJiaChaKanFenLei,
|
|
|
xiangXiShuJu,
|
|
|
xuanZhong,
|
|
|
dianJiQueRenXuanZhong,
|
|
@@ -159,12 +287,25 @@ export default {
|
|
|
chaZhaoLeiXing,
|
|
|
dianJiLeiXingChaXun,
|
|
|
dianJiBianJi,
|
|
|
- bianJiRef
|
|
|
+ bianJiRef,
|
|
|
+ huanHangXianShi,
|
|
|
+ baoCunJianChaShenQing,
|
|
|
+ ceBianLanDianJi,
|
|
|
+ baoCunMuBan,
|
|
|
+ baoCunMuBanRef,
|
|
|
+ dianJiBaoCunMuBan,
|
|
|
+ baoCunMuBanJiaoYan,
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
</script>
|
|
|
|
|
|
<style scoped>
|
|
|
+:deep(.el-table .children-row) {
|
|
|
+ background: rgba(145, 247, 145, 0.5);
|
|
|
+}
|
|
|
|
|
|
+:deep(.el-table) {
|
|
|
+ --el-table-row-hover-background-color: #85dbfd7a;
|
|
|
+}
|
|
|
</style>
|