<!-- 到期提醒管理列表 --> <script name="RemindList" lang="ts" setup> import type { Ref } from 'vue' import { ElLoading, ElMessage, ElMessageBox } from 'element-plus' import dayjs from 'dayjs' import DetailDialog from './detailDialog.vue' import type { TableColumn } from '@/components/NormalTable/table_interface' import { getRemindList } from '@/api/system/baseInfoRemindManage' const $router = useRouter() const loadingTable = ref(false) // 查询条件 const listQuery = ref({ limit: 20, offset: 1, }) // 表头 const columns = ref<TableColumn[]>([ { text: '实验室', value: 'labCodeName', align: 'center', width: '120' }, { text: '提醒名称', value: 'remindName', align: 'center' }, { text: '提醒时间', value: 'remindDaysDefineFront', align: 'center' }, { text: '提醒范围', value: 'remindScope', align: 'center' }, { text: '提醒频次', value: 'remindTimesDefineFront', align: 'center' }, ]) const list = ref([]) // 列表 const total = ref(0) // 数据总条数 const detailDialogRef = ref() // 详情组件ref // --------------------------------------------------------------------------------------------------------- // 数据查询 function fetchData() { loadingTable.value = true getRemindList().then((response) => { list.value = response.data.map((item: { remindDays: number; remindTimes: number }) => { return { ...item, remindDaysDefineFront: `到期前${item.remindDays}天提醒`, remindTimesDefineFront: `${item.remindTimes}` !== '' ? `每隔${item.remindTimes}天提醒一次` : '/', } }) loadingTable.value = false }).catch(() => { loadingTable.value = false }) } // 新建 const add = () => { detailDialogRef.value.initDialog('add') } // 操作 const handleEdit = (row: any, val: string) => { detailDialogRef.value.initDialog(val, row) } // ---------------------------------------钩子---------------------------------------------- onMounted(() => { fetchData() }) </script> <template> <app-container> <table-container style="padding-top: 10px;"> <!-- <template #btns-right> <icon-button icon="icon-add" title="新建" type="primary" @click="add" /> </template> --> <normal-table :data="list" :total="total" :columns="columns" :query="listQuery" :list-loading="loadingTable" > <template #preColumns> <el-table-column label="序号" width="55" align="center"> <template #default="scope"> {{ (listQuery.offset - 1) * listQuery.limit + scope.$index + 1 }} </template> </el-table-column> </template> <template #columns> <el-table-column label="操作" align="center" fixed="right" width="90" > <template #default="{ row }"> <!-- <el-button size="small" type="primary" link @click="handleEdit(row, 'detail')" > 查看 </el-button> --> <el-button size="small" link type="primary" @click="handleEdit(row, 'edit')" > 编辑 </el-button> <!-- <el-button size="small" type="danger" link @click="handleEdit(row, 'delete')" > 删除 </el-button> --> </template> </el-table-column> </template> </normal-table> </table-container> </app-container> <detail-dialog ref="detailDialogRef" @refresh="fetchData()" /> </template>