historyHealth.vue 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. <template>
  2. <el-table v-loading="loading" :data="hsTimeData" border style="width: 100%">
  3. <el-table-column prop="hlScoreId" label="ID" width="80"/>
  4. <el-table-column prop="hlDate" label="评分时间"/>
  5. <el-table-column prop="hlScore" label="健康度得分"/>
  6. <el-table-column label="操作" width="120">
  7. <template #default="scope">
  8. <el-button type="primary" link icon="Document" @click="handleDetail(scope.row)">明细</el-button>
  9. </template>
  10. </el-table-column>
  11. </el-table>
  12. <pagination
  13. v-show="total>0"
  14. :total="total"
  15. v-model:page="queryParams.pageNum"
  16. v-model:limit="queryParams.pageSize"
  17. @pagination="getHlList"
  18. />
  19. <el-dialog v-model="visible" :title="timeTitle" width="1200">
  20. <time-detail :rowData="rowData" v-if="visible"/>
  21. <template #footer>
  22. <el-button @click="visible=false">关闭</el-button>
  23. </template>
  24. </el-dialog>
  25. </template>
  26. <script setup lang="ts">
  27. import {hsDayList, hsTimeList} from "@/api/hl/hs"
  28. import {onMounted, reactive} from "vue";
  29. import timeDetail from "./widget/timeDetail.vue"
  30. const {proxy} = getCurrentInstance()
  31. const props = defineProps(['modelId', 'dialogType'])
  32. const hsTimeData = ref([])
  33. const total = ref(0)
  34. const loading = ref(false)
  35. const timeTitle = ref('')
  36. const visible = ref(false)
  37. const rowData = ref({})
  38. const queryParams = reactive({
  39. pageNum: 1,
  40. pageSize: 10,
  41. modelId: props.modelId
  42. })
  43. onMounted(() => {
  44. getHlList()
  45. })
  46. function handleDetail(row) {
  47. timeTitle.value = row.hlDate + "明细"
  48. visible.value = true
  49. rowData.value = row
  50. }
  51. async function getHlList() {
  52. loading.value = true
  53. const request = props.dialogType === "history" ? hsTimeList : hsDayList
  54. const res = await request(queryParams)
  55. hsTimeData.value = res.rows
  56. total.value = res.total
  57. loading.value = false
  58. }
  59. </script>
  60. <style scoped lang="scss">
  61. </style>