index.vue 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257
  1. <script setup>
  2. import { closeToast, showLoadingToast } from 'vant'
  3. import { download2 } from '~/request/request'
  4. const { currentRoute } = useRouter()
  5. const route = currentRoute.value
  6. const jjmk_id = route.query.jjmk_id
  7. const detailData = ref({})
  8. const jjtj = ref({})
  9. const zbtj = ref({})
  10. showLoadingToast({
  11. message: '加载中...',
  12. forbidClick: true,
  13. })
  14. request({
  15. url: '/jdbg/jsldgl_myjsjxkh_khhz/detail',
  16. data: {
  17. jjmk_id,
  18. },
  19. }).then((res) => {
  20. closeToast()
  21. detailData.value = res.data.one_info
  22. if (detailData.value.jjmkl_jjmkl_id_1 == 1)
  23. jjtj.value = JSON.parse(res.data.one_info.jjmkl_jjtj_json)
  24. else if (detailData.value.jjmkl_jjmkl_id_1 == 10)
  25. zbtj.value = JSON.parse(res.data.one_info.jjmkl_zbdffj_json)
  26. })
  27. function getFile(url, fileName) {
  28. download2(url, null, fileName.split('.')[0])
  29. }
  30. </script>
  31. <template>
  32. <div>
  33. <div class="tableContainer">
  34. <div class="topPart">
  35. <table class="Tb" width="100%" cellspacing="0" cellpadding="0">
  36. <tr>
  37. <td class="titleOpt">
  38. 学校名称
  39. </td>
  40. <td>{{ detailData.jjmk_uo_name }}</td>
  41. </tr>
  42. <tr>
  43. <td class="titleOpt">
  44. 姓名
  45. </td>
  46. <td>
  47. {{ detailData.jjmk_xm }}
  48. </td>
  49. </tr>
  50. <tr>
  51. <td class="titleOpt">
  52. 考核类别
  53. </td>
  54. <td>{{ detailData.jjmkl_jjmkl_name_1 }}</td>
  55. </tr>
  56. <tr>
  57. <td class="titleOpt">
  58. 名师类别
  59. </td>
  60. <td>{{ detailData.jjmkl_jjmkl_name_2 }}</td>
  61. </tr>
  62. <template v-if="detailData.jjmkl_jjmkl_id_1 == 1">
  63. <tr>
  64. <td class="titleOpt">
  65. 教学类别
  66. </td>
  67. <td>
  68. <div class="specialTd">
  69. {{ detailData.jjmkl_jjmkl_name_3 }}
  70. </div>
  71. </td>
  72. </tr>
  73. <tbody v-for="(item, index) in jjtj" :key="index" class="bg-hex-fffff9 border_bottom">
  74. <tr>
  75. <td class="titleOpt">
  76. 进阶条件
  77. </td>
  78. <td>
  79. <div class="specialTd">
  80. {{ item.cate1 }}
  81. </div>
  82. </td>
  83. </tr>
  84. <tr>
  85. <td class="titleOpt">
  86. 内容
  87. </td>
  88. <td>
  89. <div class="specialTd">
  90. {{ item.desc }}
  91. </div>
  92. </td>
  93. </tr>
  94. <tr>
  95. <td class="titleOpt">
  96. 附件
  97. </td>
  98. <td>
  99. <span style="color: #1A7AFD;" @click="getFile(item.file.url, item.file.name)">{{ item.file.name
  100. }}</span>
  101. </td>
  102. </tr>
  103. </tbody>
  104. <tr>
  105. <td class="titleOpt">
  106. 申报表
  107. </td>
  108. <td>
  109. <div v-for="f in detailData.jjmkl_sqb_file.split(';')" :key="f">
  110. <span style="color: #1A7AFD;" @click="getFile(f.split('|')[0], f.split('|')[1])">
  111. {{ f.split('|')[1]
  112. }}
  113. </span>
  114. </div>
  115. </td>
  116. </tr>
  117. <tr>
  118. <td class="titleOpt">
  119. 量化表
  120. </td>
  121. <td>
  122. <div v-for="f in detailData.jjmkl_lhb_file.split(';')" :key="f">
  123. <span style="color: #1A7AFD;" @click="getFile(f.split('|')[0], f.split('|')[1])">
  124. {{ f.split('|')[1]
  125. }}
  126. </span>
  127. </div>
  128. </td>
  129. </tr>
  130. </template>
  131. <template v-else-if="detailData.jjmkl_jjmkl_id_1 == 10">
  132. <tbody v-for="(item, index) in zbtj" :key="index" class="bg-hex-fffff9 border_bottom">
  133. <tr>
  134. <td class="titleOpt">
  135. 一级指标
  136. </td>
  137. <td>
  138. <div class="specialTd">
  139. {{ item.cate1 }}
  140. </div>
  141. </td>
  142. </tr>
  143. <tr>
  144. <td class="titleOpt">
  145. 二级指标
  146. </td>
  147. <td>
  148. <div class="specialTd">
  149. {{ item.cate2 }}
  150. </div>
  151. </td>
  152. </tr>
  153. <tr>
  154. <td class="titleOpt">
  155. 内容
  156. </td>
  157. <td>
  158. <div class="specialTd">
  159. {{ item.desc }}
  160. </div>
  161. </td>
  162. </tr>
  163. <tr>
  164. <td class="titleOpt">
  165. 得分
  166. </td>
  167. <td>
  168. <div class="specialTd">
  169. {{ item.score }}
  170. </div>
  171. </td>
  172. </tr>
  173. <tr>
  174. <td class="titleOpt">
  175. 附件
  176. </td>
  177. <td>
  178. <span style="color: #1A7AFD;" @click="getFile(item.file.url, item.file.name)">
  179. {{ item.file.name
  180. }}
  181. </span>
  182. </td>
  183. </tr>
  184. </tbody>
  185. <tr>
  186. <td class="titleOpt">
  187. 总分
  188. </td>
  189. <td>
  190. <div class="specialTd">
  191. {{ detailData.jjmkl_zbzf }}
  192. </div>
  193. </td>
  194. </tr>
  195. </template>
  196. <tr>
  197. <td class="titleOpt">
  198. 校端审核情况
  199. </td>
  200. <td>
  201. <div>
  202. <span
  203. :class="{ 'text-red': detailData.jjmkl_xdshqk_option_n === '不合格' || detailData.jjmkl_xdshqk_option_n === '不符合' }"
  204. >{{
  205. detailData.jjmkl_xdshqk_option_n
  206. }}</span>
  207. <p v-if="detailData.jjmkl_xdshqk_option_n === '不合格' || detailData.jjmkl_xdshqk_option_n === '不符合'">
  208. {{ detailData.jjmkl_xdshqk_clyj }}
  209. </p>
  210. </div>
  211. </td>
  212. </tr>
  213. <tr>
  214. <td class="titleOpt">
  215. 局端审核情况
  216. </td>
  217. <td>
  218. <div>
  219. <span
  220. :class="{ 'text-red': detailData.jjmkl_jdshqk_option_n === '不合格' || detailData.jjmkl_jdshqk_option_n === '不符合' }"
  221. >{{
  222. detailData.jjmkl_jdshqk_option_n
  223. }}</span>
  224. <p v-if="detailData.jjmkl_jdshqk_option_n === '不合格' || detailData.jjmkl_jdshqk_option_n === '不符合'">
  225. {{ detailData.jjmkl_jdshqk_clyj }}
  226. </p>
  227. </div>
  228. </td>
  229. </tr>
  230. </table>
  231. </div>
  232. </div>
  233. </div>
  234. </template>
  235. <style lang="scss" scoped>
  236. .border_bottom {
  237. border-bottom: 2px solid #666;
  238. border-top: 2px solid #666;
  239. }
  240. .text-red {
  241. color: red;
  242. }
  243. :deep(.specialTd table tbody tr td) {
  244. border: 1px #CCCCCC solid !important;
  245. }
  246. </style>