index.vue 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143
  1. <template>
  2. <div class="app-container bg-page fx-column fx-cen-cen">
  3. <index-card class="width100" title="多元升学路径规划(Way)">
  4. <div slot="more" class="fx-row">
  5. <el-button size="small" round type="primary" @click="goForm()">进入评测</el-button>
  6. <el-button size="small" round plain @click="historyVisible=true,getList()">查看记录</el-button>
  7. </div>
  8. <div class="fx-row fx-bet-sta">
  9. <el-image style="width: 240px" :src="require('@/assets/images/career/img_way.png')" fit="contain" />
  10. <div class="ml20 fx-1 fx-column">
  11. <div class="text" style="display:flex;align-items: center;">
  12. <div>
  13. <span style="width:200px;display:inline-block">测评方向:学业规划</span>
  14. <span style="width:200px;display:inline-block">测评时间:3-5分钟</span>
  15. </div>
  16. <div />
  17. </div>
  18. <div class="tabBox">
  19. <template>
  20. <el-tabs v-model="activeName">
  21. <el-tab-pane label="测前说明" name="first">
  22. <ul class="cp-rule">
  23. <li>1、请确保在一个独立、安静的环境下一次性完成,勿受他人干扰。</li>
  24. <li>2、如遇到无法确定内容,根据个人想法选择填写即可。</li>
  25. <li>3、参加测试的人员请务必诚实、独立的回答问题,只有如此,才能得到有效的结果。</li>
  26. </ul>
  27. </el-tab-pane>
  28. <el-tab-pane label="测评介绍" name="second">
  29. <ul class="cp-rule">
  30. <li>随着新高考改革的推进,以“多元录取”为核心的升学方式替代了传统千军万马过独木桥的录取方式,国家鼓励更多的学生能够结合自身的情况选择合适的升学路径,本学业生涯路径测评会通过家庭环境、个人情况共计十余项指标精准定位最适合自己的升学路径,助力考生合理规划高中的学业,促进低分高就及科学的学业生涯规划。</li>
  31. </ul>
  32. </el-tab-pane>
  33. <el-tab-pane label="测评目的" name="third">
  34. <ul class="cp-rule">
  35. <li>1、本测评仅需准确填写个人信息即可,简单快捷帮您分析出多元的升学途径。</li>
  36. <li>2、本测评结论提供了高中学业的规划表,可与多元升学路径结合使用。</li>
  37. </ul>
  38. </el-tab-pane>
  39. </el-tabs>
  40. </template>
  41. </div>
  42. </div>
  43. </div>
  44. </index-card>
  45. <!-- 历史 -->
  46. <el-drawer :visible.sync="historyVisible" title="多元升学路径规划历史" size="70%" append-to-body>
  47. <dynamic-table :rows="list" :columns="columns">
  48. <template #action="{row}">
  49. <el-button type="text" icon="el-icon-view" @click="goReport(row)">查看</el-button>
  50. </template>
  51. </dynamic-table>
  52. <pagination v-if="total>queryParams.pageSize" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" />
  53. </el-drawer>
  54. </div>
  55. </template>
  56. <script>
  57. import IndexCard from '@/views/login/components/modules/shared/IndexCard.vue'
  58. import DynamicTable from '@/components/dynamic-table/index.vue'
  59. import { getMultipleWayHistories } from '@/api/webApi/multiple-way'
  60. export default {
  61. name: 'MultipleWay',
  62. components: { DynamicTable, IndexCard },
  63. data() {
  64. return {
  65. activeName: 'first',
  66. // history
  67. historyVisible: false,
  68. list: [],
  69. total: 0,
  70. queryParams: {
  71. pageNum: 1,
  72. pageSize: 20
  73. },
  74. columns: [
  75. { prop: 'createdTime', label: '时间' },
  76. { prop: 'acton', label: '操作', slotBody: 'action' }
  77. ]
  78. }
  79. },
  80. methods: {
  81. goForm() {
  82. this.$router.push('/sygh/multiple-way/form')
  83. },
  84. goReport(row) {
  85. const path = this.$router.resolve({ path: '/sygh/multiple-way/report', query: { formId: row.formId }})
  86. window.open(path.href, '_blank')
  87. },
  88. async getList() {
  89. const res = await getMultipleWayHistories(this.queryParams)
  90. this.list = res.rows
  91. this.total = res.total
  92. }
  93. }
  94. }
  95. </script>
  96. <style lang="scss" scoped>
  97. .cp-rule {
  98. font-size: 14px;
  99. color: #414141;
  100. font-family: PingFangSC-Regular, PingFang SC, Helvetica, serif;
  101. font-weight: 400;
  102. padding: 0px;
  103. width: 100%;
  104. li {
  105. width: 100%;
  106. list-style: none;
  107. padding: 8px 0;
  108. line-height: 1.75;
  109. word-wrap: normal;
  110. white-space: pre-wrap;
  111. }
  112. }
  113. .text {
  114. margin-bottom: 16px;
  115. font-size: 14px;
  116. font-family: PingFangSC-Regular, PingFang SC, Helvetica, serif;
  117. font-weight: 400;
  118. justify-content: space-between;
  119. }
  120. </style>
  121. <style lang="scss" scoped>
  122. .tabBox {
  123. .el-tabs {
  124. .el-tabs__header {
  125. .el-tabs__nav-wrap {
  126. .el-tabs__nav-scroll {
  127. .el-tabs__nav {
  128. .el-tabs__active-bar {
  129. background-color: var(--themeColor) !important;
  130. }
  131. .el-tabs__item.is-active {
  132. color: var(--themeColor) !important;
  133. }
  134. }
  135. }
  136. }
  137. }
  138. }
  139. }
  140. </style>