Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
 
 
 
 
 
 

302 строки
4.9 KiB

  1. <template>
  2. <view class="page">
  3. <view class="timeTable_sec3">
  4. <view class="tSec3Box">
  5. <view class="tSec3Time">
  6. <text>{{ data.date }}</text>
  7. 第{{ data.time }}节
  8. </view>
  9. </view>
  10. </view>
  11. <view class="timeTable_sec4">
  12. <view class="tSec4Box">
  13. <view class="tSec4T">
  14. <view>{{ data.lessonName }}</view>
  15. <view>{{ data.classRoomName }}教室</view>
  16. </view>
  17. <view class="tSec4Con">
  18. <view class="studSeeSec2Txt">
  19. <view>
  20. <text>{{ data.shouldArrive }}</text>
  21. </view>
  22. <view>应到</view>
  23. </view>
  24. <view class="studSeeSec2Line"></view>
  25. <view class="studSeeSec2Txt">
  26. <view>
  27. <text>{{ data.turnTo }}</text>
  28. </view>
  29. <view>实到</view>
  30. </view>
  31. </view>
  32. </view>
  33. </view>
  34. <view class="timeTable_sec2">
  35. <view class="tSec2Box2">
  36. <view class="tSec2Con2">
  37. <view class="studCheckList">
  38. <view class="studCheckLi" v-for="(k, i) in data.result" :key="k.StuName">
  39. <view style="float:right; margin-top: 7px;" class="studCheckStatue" :class="type(k.Sort)">
  40. <text></text>
  41. {{ k.Sort }}
  42. </view>
  43. <view class="studCheckTxt">
  44. <image src="~@/common/images/person.png" mode="widthFix"></image>
  45. <text style="margin-left:0">
  46. {{ k.StuName }}
  47. </text>
  48. <image src="~@/common/images/location.png" mode="widthFix"></image>
  49. {{ k.ClassName }}
  50. </view>
  51. </view>
  52. </view>
  53. </view>
  54. </view>
  55. </view>
  56. </view>
  57. </template>
  58. <script>
  59. export default {
  60. data() {
  61. return {
  62. pageInfo: null,
  63. data: {}
  64. };
  65. },
  66. methods: {
  67. init() {
  68. let _this = this;
  69. _this.pageInfo = _this.GET_PARAM(); //获取页面传递参数
  70. _this.LOADING('加载数据中…');
  71. _this.HTTP_GET('learun/adms/timetable/StuList', _this.pageInfo, '加载数据时出错').then(res => {
  72. this.HIDE_LOADING();
  73. console.log(res);
  74. _this.data = res;
  75. });
  76. }
  77. },
  78. computed: {
  79. type() {
  80. return str => {
  81. let sort = '';
  82. switch (str) {
  83. case "迟到":
  84. sort = "studCheckStatue2";
  85. break;
  86. case "早退":
  87. sort = "studCheckStatue2";
  88. break;
  89. case "病假":
  90. sort = "studCheckStatue4";
  91. break;
  92. case "事假":
  93. sort = "studCheckStatue2";
  94. break;
  95. case "准时":
  96. sort = "studCheckStatue1";
  97. break;
  98. case "旷课":
  99. sort = "studCheckStatue3";
  100. break;
  101. default:
  102. }
  103. return sort;
  104. };
  105. }
  106. },
  107. created() {
  108. this.init();
  109. }
  110. };
  111. </script>
  112. <style lang="less" scoped>
  113. .timeTable_sec2 {
  114. margin-bottom: 30px;
  115. }
  116. .tSec2Box2 {
  117. /*padding: 0 12px;*/
  118. background: #fff;
  119. }
  120. .tSec2Con2 {
  121. display: none;
  122. }
  123. .tSec2Con2:first-child {
  124. display: block;
  125. }
  126. .studCheckLi {
  127. border-bottom: 1px solid #d5eaf7;
  128. padding: 8px 12px;
  129. font-size: 15px;
  130. }
  131. .studCheckT {
  132. font-size: 15px;
  133. color: #6e6e6e;
  134. }
  135. .studCheckT image {
  136. width: 11px;
  137. position: relative;
  138. margin-right: 5px;
  139. }
  140. .studCheckTxt {
  141. font-size: 13px;
  142. color: #9d9e9e;
  143. margin: 7px 0;
  144. }
  145. .studCheckTxt text {
  146. margin: 0 30px;
  147. display: inline-block;
  148. width: 100px;
  149. }
  150. .studCheckTxt image {
  151. width: 12px;
  152. position: relative;
  153. margin-right: 3px;
  154. top: 1px;
  155. }
  156. .studCheckStatue {
  157. font-size: 13px;
  158. }
  159. .studCheckStatue text {
  160. display: inline-block;
  161. width: 8px;
  162. height: 8px;
  163. position: relative;
  164. margin-right: 5px;
  165. vertical-align: middle;
  166. top: -2px;
  167. }
  168. .studCheckStatue1 {
  169. color: #0089fe;
  170. }
  171. .studCheckStatue1 text {
  172. background: #0089fe;
  173. }
  174. .studCheckStatue2 {
  175. color: #f2b60a;
  176. }
  177. .studCheckStatue2 text {
  178. background: #f2b60a;
  179. }
  180. .studCheckStatue3 {
  181. color: #e24545;
  182. }
  183. .studCheckStatue3 text {
  184. background: #e24545;
  185. }
  186. .studCheckStatue4 {
  187. color: #29cf41;
  188. }
  189. .studCheckStatue4 text {
  190. background: #29cf41;
  191. }
  192. .noHtml {
  193. height: 100%;
  194. line-height: 60px;
  195. text-align: center;
  196. font-size: 14px;
  197. }
  198. .timeTable_sec3 {
  199. padding: 0px 12px 1px;
  200. text-align: center;
  201. background: #0c86d8;
  202. height: 100px;
  203. }
  204. .tSec3Time {
  205. text-align: right;
  206. line-height: 24px;
  207. font-size: 14px;
  208. color: #fff;
  209. }
  210. .tSec3Time text {
  211. float: left;
  212. }
  213. .timeTable_sec4 {
  214. padding: 0 12px;
  215. margin-top: -65px;
  216. margin-bottom: 10px;
  217. }
  218. .tSec4Box {
  219. background: #fff;
  220. padding: 20px 0;
  221. text-align: center;
  222. font-size: 0;
  223. border-radius: 4px;
  224. }
  225. .tSec4T {
  226. text-align: center;
  227. margin-bottom: 10px;
  228. }
  229. .tSec4T view:first-child {
  230. color: #1a1a1a;
  231. font-size: 16px;
  232. margin-bottom: 5px;
  233. }
  234. .tSec4T view:last-child {
  235. color: #7a7a7a;
  236. font-size: 13px;
  237. }
  238. .tSec4Con > * {
  239. display: inline-block;
  240. vertical-align: middle;
  241. }
  242. .tSec4Con .studSeeSec2Line {
  243. height: 25px;
  244. width: 1px;
  245. background: #d6dfe2;
  246. margin: 0 40px;
  247. }
  248. .tSec4Con .studSeeSec2Txt {
  249. color: #8a8a8a;
  250. }
  251. .tSec4Con .studSeeSec2Txt view:first-child {
  252. font-size: 13px;
  253. }
  254. .tSec4Con .studSeeSec2Txt view:first-child text {
  255. font-size: 20px;
  256. color: #0089fe;
  257. margin-right: 5px;
  258. }
  259. .tSec4Con .studSeeSec2Txt view:last-child {
  260. font-size: 15px;
  261. }
  262. </style>