index.vue 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. <template>
  2. <view class="window-box">
  3. <ly-back :showBack="false"/>
  4. <view class="search w100 h100 flex-center-center">
  5. <view class="btn btn-primary" @click="search">扫码</view>
  6. <!-- <view class="btn btn-primary" @click="toSelect">手动选择</view>-->
  7. </view>
  8. </view>
  9. </template>
  10. <script setup>
  11. import {reactive} from "vue";
  12. import {navTo, showToast} from "@/utils/app";
  13. import {cradToStudentInfo} from "@/api/student";
  14. import storage from "@/utils/storage";
  15. const pD = reactive({
  16. title: '学生未激活',
  17. select: 0,
  18. selectMax: 1,
  19. })
  20. const queryForm = reactive({
  21. student_id: 0,
  22. })
  23. const search = async () => {
  24. const {code, msg, data} = await cradToStudentInfo({
  25. mac: 'BBBBBBBBBBBB'
  26. })
  27. if (code === 1) {
  28. queryForm.student_id = data.student.id
  29. storage.setKey(`student-${data.student.id}`)
  30. navTo('pages/task/info', {
  31. id: queryForm.student_id,
  32. })
  33. } else {
  34. showToast(msg)
  35. }
  36. // navTo('pages/task/info')
  37. }
  38. const toSelect = () => {
  39. navTo('pages/classes/select')
  40. }
  41. </script>
  42. <style lang="scss" scoped>
  43. .info-item {
  44. display: flex;
  45. align-items: center;
  46. margin-bottom: 30rpx;
  47. &-label {
  48. margin-right: 50rpx;
  49. }
  50. }
  51. </style>