enroll.vue 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136
  1. <template>
  2. <view class="enroll">
  3. <view v-if="!pageInfo.length" style="margin-top: 50%;">
  4. <u-empty text="暂无考试报名" mode="data"></u-empty>
  5. </view>
  6. <view v-else>
  7. <view class="boxls" v-for="(item, index) in pageInfo" :key="index">
  8. <view class="cne1">{{ item.examType }}</view>
  9. <view class="cne2">{{ item.examPeriod }}</view>
  10. <view class="cne3">报名时间:{{ $method.timestampToTime(item.signStartTime) + '~' + $method.timestampToTime(item.signEndTime) }}</view>
  11. <view class="cne4">
  12. <view class="ksNa">考试时间:</view>
  13. <view class="ksLis">
  14. <view v-for="(items, indexs) in item.examArrangementTimeVo" :key="indexs">
  15. {{ $method.timestampToTime(items.startTime) + '~' + $method.timestampToTime(items.endTime) }}
  16. </view>
  17. </view>
  18. </view>
  19. <view class="btnStys">
  20. <view class="leftsboxs" @click="jumpPages(item.examFromUrl)">官方通知</view>
  21. <view class="rightboxs" @click="jumpPages(item.examUrl)">我要报名</view>
  22. </view>
  23. </view>
  24. </view>
  25. </view>
  26. </template>
  27. <script>
  28. export default {
  29. data() {
  30. return {
  31. pageInfo: []
  32. };
  33. },
  34. onLoad(option) {},
  35. onShow() {},
  36. mounted() {
  37. this.init();
  38. },
  39. methods: {
  40. init() {
  41. this.$api.arrangementlist().then(res => {
  42. if (res.data.code === 200) {
  43. this.pageInfo = res.data.rows;
  44. }
  45. });
  46. },
  47. jumpPages(url) {
  48. if (url !== null) {
  49. this.$navTo.togo('/pages2/index/webview', {
  50. urls: url
  51. });
  52. }else{
  53. uni.showToast({
  54. title: '暂未获取到网站',
  55. icon:'none'
  56. })
  57. return
  58. }
  59. }
  60. }
  61. };
  62. </script>
  63. <style scope>
  64. .boxls {
  65. padding: 12rpx;
  66. padding-left: 150rpx;
  67. margin: 32rpx 32rpx 0rpx;
  68. border-radius: 32rpx;
  69. box-shadow: 0rpx 0rpx 16rpx 4rpx rgba(145, 156, 178, 0.1);
  70. background: url('https://file.xyyxt.net/oss/images/advertising/20210830/1630317031492_1012647606.png') no-repeat center center;
  71. background-size: 100% 100%;
  72. }
  73. .cne1 {
  74. margin-top: 73rpx;
  75. font-size: 30rpx;
  76. font-weight: bold;
  77. color: #198a8c;
  78. }
  79. .cne2 {
  80. margin-top: 19rpx;
  81. color: #131b31;
  82. font-weight: 500;
  83. font-size: 24rpx;
  84. }
  85. .cne3 {
  86. margin-top: 21rpx;
  87. color: #131b31;
  88. font-weight: bold;
  89. font-size: 24rpx;
  90. }
  91. .cne4 {
  92. margin-top: 21rpx;
  93. color: #131b31;
  94. font-weight: bold;
  95. font-size: 24rpx;
  96. display: flex;
  97. }
  98. .ksNa {
  99. }
  100. .btnStys {
  101. margin-top: 28rpx;
  102. display: flex;
  103. align-items: center;
  104. margin-bottom: 16rpx;
  105. }
  106. .leftsboxs {
  107. margin-right: 62rpx;
  108. border-radius: 16rpx;
  109. background: #f0c171;
  110. box-shadow: 0rpx 5rpx 5rpx 0rpx rgba(74, 84, 89, 0.2);
  111. height: 48rpx;
  112. line-height: 48rpx;
  113. text-align: center;
  114. width: 144rpx;
  115. color: #fff;
  116. font-size: 24rpx;
  117. font-weight: 500;
  118. }
  119. .rightboxs {
  120. border-radius: 16rpx;
  121. background: #7dc8c9;
  122. box-shadow: 0rpx 5rpx 5rpx 0rpx rgba(74, 84, 89, 0.2);
  123. height: 48rpx;
  124. line-height: 48rpx;
  125. text-align: center;
  126. width: 144rpx;
  127. color: #fff;
  128. font-size: 24rpx;
  129. font-weight: 500;
  130. }
  131. page {
  132. background: #ffffff;
  133. }
  134. </style>