index.vue 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. <script setup lang='ts'>
  2. import { RouteLocationRaw, useRouter } from 'vue-router'
  3. import user from '~/store/user'
  4. const router = useRouter()
  5. function routerPush(_route: RouteLocationRaw) {
  6. router.push(_route)
  7. }
  8. // const tableData = ref([])
  9. // const total = ref(0)
  10. const queryForm = reactive({
  11. dc_grade_id: '',
  12. dc_subject_id: '',
  13. dc_keyword: '',
  14. page: 1
  15. })
  16. // watch(queryForm, () => {
  17. // doQuery()
  18. // }, { deep: true, immediate: true })
  19. // function doQuery() {
  20. // request({
  21. // url: '/dyaw/ctfx/index',
  22. // data: {
  23. // ...queryForm,
  24. // sm_id: user.sm_info.sm_id,
  25. // limit: 8,
  26. // dc_check: '1'
  27. // }
  28. // }).then(res => {
  29. // if (res.code === "1") {
  30. // tableData.value = res.data.page_data
  31. // total.value = parseInt(res.data.total_rows)
  32. // }
  33. // })
  34. // }
  35. // TODO: 临时处理
  36. function translateString(str: string) {
  37. return str
  38. }
  39. function onClickLeft() {
  40. history.back()
  41. }
  42. function getGradeAndSubject({ grade, subject }: { grade: string, subject: string }) {
  43. console.log(grade, subject)
  44. queryForm.dc_grade_id = grade
  45. queryForm.dc_subject_id = subject
  46. }
  47. </script>
  48. <template>
  49. <div class="w-full h-full flex flex-col">
  50. <div class="w-full sticky top-0 z-100"><van-nav-bar title="错题分析" left-text="返回" left-arrow
  51. @click-left="onClickLeft" />
  52. <div class="flex justify-between items-center bg-light-50">
  53. <van-search v-model="queryForm.dc_keyword" placeholder="请输入搜索关键词" class="flex-auto" background="transparent" />
  54. <span class="pr-10px">
  55. <multi-tree-select @confirm="getGradeAndSubject"></multi-tree-select>
  56. </span>
  57. </div>
  58. </div>
  59. <remote-list url="/dyaw/ctfx/index" :d="{
  60. ...queryForm,
  61. sm_id: user.sm_info.sm_id,
  62. dc_check: '1'
  63. }" class="mt-2 flex-auto">
  64. <template #default="{ row: d }">
  65. <van-cell>
  66. <div class="cursor-pointer rounded shadow-dark-100 px-4 py-2 shadow-md drop-shadow-md h-110px space-y-2"
  67. @click="routerPush({ name: 'teacher_index_detail', params: { id: d.dc_id } })">
  68. <div class="flex justify-between">
  69. <div class="text-xl whitespace-nowrap overflow-ellipsis overflow-hidden max-w-200px">{{ d.dc_title }}</div>
  70. <van-tag type="primary">{{ d.dc_keyword }}</van-tag>
  71. </div>
  72. <div class="flex space-x-6 text-gray-500">
  73. <div>{{ d.dc_grade_name }}</div>
  74. <div>{{ d.dc_subject_name }}</div>
  75. </div>
  76. <div class="text-left text-sm text-gray-500 whitespace-nowrap overflow-ellipsis overflow-hidden">{{
  77. translateString(d.dc_content) }}</div>
  78. </div>
  79. </van-cell>
  80. </template>
  81. </remote-list>
  82. </div>
  83. </template>