2025-11-11 18:17:47 +08:00

153 lines
5.7 KiB
Vue

<template>
<div class="app-container">
<div class="compact-form">
<el-form :model="queryParams" ref="queryRef" label-width="5rem" style="width: 100%;" :size="aotuSize">
<el-row :gutter="10">
<el-col :span="5">
<el-form-item label="委托机构:" prop="srcHospName">
<SelectTable v-model:data="queryParams.srcHospName" :fields="ksdhFields" :tableData="[]" label="label"
:size="aotuSize" value="value" objKey="value" :border="true" placeholder="请选择委托机构"
@getDataValue="handleQuery" />
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="条码号:" prop="barcode">
<el-input v-model="queryParams.barcode" placeholder="请输入条码号" clearable @change="handleQuery" />
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="姓名:" prop="patName">
<el-input v-model="queryParams.patName" placeholder="请输入姓名" clearable @change="handleQuery" />
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="申请项目:" prop="OrderItemName">
<el-input v-model="queryParams.OrderItemName" placeholder="请输入申请项目" clearable @change="handleQuery" />
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="标本状态:" prop="dybz">
<el-select v-model="queryParams.dybz" placeholder="请选择" clearable @change="handleQuery">
<!-- <el-option label="已打印" value="1" />
<el-option label="未打印" value="0" /> -->
</el-select>
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="采样人:" prop="affirmUserName">
<el-input v-model="queryParams.affirmUserName" placeholder="请输入采样人" clearable @change="handleQuery" />
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="日期:" prop="times">
<el-date-picker v-model="queryParams.times" type="daterange" range-separator="-" start-placeholder="开始时间"
end-placeholder="结束时间" format="YYYY-MM-DD" value-format="YYYY-MM-DD" />
</el-form-item>
</el-col>
<el-col :span="4">
<el-button type="primary">查询</el-button>
<el-button>重置</el-button>
</el-col>
</el-row>
</el-form>
</div>
<div class="mb10">
<el-button type="primary">已核查</el-button>
<el-button type="primary">重新采集</el-button>
<el-button type="primary">撤销退回</el-button>
<el-popover placement="bottom">
<template #reference>
<el-button type="primary" plain>其他操作 <el-icon>
<ArrowDown />
</el-icon></el-button>
</template>
<div class="btns">
<el-button type="primary" plain>申请退费</el-button>
<el-button type="primary" plain>取消核查</el-button>
</div>
</el-popover>
</div>
<CustomTable ref="tableRefs" :data="tableData" :columns="columns" :config="tableConfig" :pagination="pagination">
</CustomTable>
</div>
</template>
<script setup lang="ts">
import CustomTable from '@/components/elTable/index.vue'
import { querySample } from '@/api/regional/index'
import SelectTable from '@/components/SelectTable/index.vue';
import { classCom } from '@/utils/classCom';
const aotuSize = classCom.useAutoSize();
const queryParams: any = ref({})
const tableData: any = ref([])
const columns: any = ref([
{ type: 'selection', align: 'center', visible: true, },
{ prop: 'barcode', label: '处理状态', align: 'center', visible: true, },
{ prop: 'barcode', label: '条码号', align: 'center', visible: true, },
{ prop: 'patName', label: '姓名', align: 'center', visible: true, },
{ prop: 'patSex', label: '性别', align: 'center', visible: true, },
{ prop: 'patAge', label: '年龄', align: 'center', visible: true, },
// { prop: 'ageUnit', label: '龄', align: 'center', visible: true, },
{ prop: 'orderItemName', label: '项目名称', align: 'center', visible: true, },
{ prop: 'srcHospName', label: '委托机构', align: 'center', visible: true, },
{ prop: 'srcHospName', label: '检测机构', align: 'center', visible: true, },
{ prop: 'Status', label: '标本状态', align: 'center', visible: true, },
{ prop: 'affirmUserName', label: '退回理由', align: 'center', visible: true, },
{ prop: 'affirmTime', label: '采样时间', align: 'center', visible: true, },
{ prop: 'signInUserName', label: '操作人', align: 'center', visible: true, },
{ prop: 'signInTime', label: '操作时间', align: 'center', visible: true, },
{ prop: 'bz', label: '备注', align: 'center', visible: true, },
])
const tableConfig = ref({
border: true, // 边框
height: '65vh', // 高度
highlightCurrentRow: true, // 高亮当前行
// fit: true, // 列宽自适应
})
const pagination = ref({
show: true,
total: 0,
pageSize: 50,
currentPage: 1,
})
const ksdhFields = ref([
{ prop: 'label', label: '名称', enablePinyinSearch: true },
{ prop: 'value', label: '代号', width: 80, enablePinyinSearch: true },
])
const handleQuery = () => {
}
const getList = () => {
}
// getList()
</script>
<style scoped lang="scss">
.compact-form {
.el-form-item {
margin-bottom: 5px;
}
}
.btns {
display: flex;
flex-direction: column;
justify-content: space-around;
&>button {
width: 100%;
margin-left: 0;
margin-bottom: 5px;
}
}
</style>