作者 徐浩
1 <template> 1 <template>
2 - <view>  
3 - <view class="stu_list">  
4 - <!-- datas_stu -->  
5 - <view class="add_li">  
6 - <picker mode="selector" :range="datas_stu" range-key="name" @change="stu_change">  
7 - <view class="add_li_box">  
8 - <view class="">  
9 - 学员姓名  
10 - </view> 2 + <view class="container">
  3 +
  4 + <view class="card">
  5 + <picker mode="selector" :range="datas_stu" range-key="name" @change="stu_change">
  6 + <view class="cell">
  7 + <view class="cell-label">
  8 + 学员姓名
  9 + </view>
  10 + <view class="cell-content">
11 <input type="text" placeholder="请选择" v-model="name" disabled="true"> 11 <input type="text" placeholder="请选择" v-model="name" disabled="true">
12 </view> 12 </view>
13 - </picker>  
14 - </view>  
15 - <view class="add_li">  
16 - <picker mode="date" :value="sx_time" :start="startDate" :end="endDate" @change="bindDateChange">  
17 - <view class="add_li_box">  
18 - <view class=""> 13 + </view>
  14 + </picker>
  15 + <picker mode="date" :value="sx_time" :start="startDate" :end="endDate" @change="bindDateChange">
  16 + <view class="cell not-border">
  17 + <view class="cell-label">
19 访谈时间 18 访谈时间
20 </view> 19 </view>
21 - <view class=""> 20 + <view class="cell-content">
22 {{sx_time?sx_time:'请选择'}} 21 {{sx_time?sx_time:'请选择'}}
23 </view> 22 </view>
24 </view> 23 </view>
25 - </picker>  
26 - </view>  
27 - <view class="add_li">  
28 - <view class="add_li_box">  
29 - <view class="">  
30 - 班主任自我介绍  
31 - </view> 24 + </picker>
  25 + </view>
  26 +
  27 + <view class="card">
  28 + <view class="cell">
  29 + <view class="cell-label">
  30 + 班主任自我介绍
  31 + </view>
  32 + <view class="cell-content">
32 <view class="sf_v_btn_b" :class="{active:is_teacher==1}" @click="set_tch"> 33 <view class="sf_v_btn_b" :class="{active:is_teacher==1}" @click="set_tch">
33 <text class="icon icon-duigou"></text> 34 <text class="icon icon-duigou"></text>
34 </view> 35 </view>
35 </view> 36 </view>
36 </view> 37 </view>
37 -  
38 - <view class="add_li">  
39 - <view class="add_li_tit"> 38 + <view class="cell not-border column">
  39 + <view class="cell-label">
40 了解学生信息(专业、学校、政治面貌、籍贯) 40 了解学生信息(专业、学校、政治面貌、籍贯)
41 </view> 41 </view>
42 - <textarea class="add_li_content" placeholder="请输入" v-model="content_one"></textarea> 42 + <view class="cell-content">
  43 + <textarea
  44 + v-model="content_one"
  45 + placeholder="请输入"
  46 + placeholder-class="textarea-placeholder"
  47 + >
  48 + </textarea>
  49 + </view>
43 </view> 50 </view>
44 - <view class="add_li">  
45 - <view class="add_li_tit"> 51 +
  52 + <view class="cell not-border column">
  53 + <view class="cell-label">
46 第几次考编,之前有没有参加培训,有没有短板模块 54 第几次考编,之前有没有参加培训,有没有短板模块
47 </view> 55 </view>
48 - <textarea class="add_li_content" placeholder="请输入" v-model="content_two"></textarea> 56 + <view class="cell-content">
  57 + <textarea
  58 + v-model="content_two"
  59 + placeholder="请输入"
  60 + placeholder-class="textarea-placeholder"
  61 + >
  62 + </textarea>
  63 + </view>
49 </view> 64 </view>
50 -  
51 -  
52 - <view class="add_li">  
53 - <view class="add_li_box">  
54 - <view class="">  
55 - 介绍近期课程安排、纪律要求  
56 - </view> 65 + </view>
  66 +
  67 + <view class="card">
  68 + <view class="cell">
  69 + <view class="cell-label">
  70 + 介绍近期课程安排、纪律要求
  71 + </view>
  72 + <view class="cell-content">
57 <view class="sf_v_btn_b" :class="{active:is_introduce==1}" @click="set_tch1"> 73 <view class="sf_v_btn_b" :class="{active:is_introduce==1}" @click="set_tch1">
58 <text class="icon icon-duigou"></text> 74 <text class="icon icon-duigou"></text>
59 </view> 75 </view>
60 </view> 76 </view>
61 </view> 77 </view>
62 - <view class="add_li">  
63 - <view class="add_li_tit"> 78 +
  79 + <view class="cell not-border column">
  80 + <view class="cell-label">
64 有无什么要求,是否适应 81 有无什么要求,是否适应
65 </view> 82 </view>
66 - <textarea class="add_li_content" placeholder="请输入" v-model="content_three"></textarea> 83 + <view class="cell-content">
  84 + <textarea
  85 + v-model="content_three"
  86 + placeholder="请输入"
  87 + placeholder-class="textarea-placeholder"
  88 + >
  89 + </textarea>
  90 + </view>
67 </view> 91 </view>
68 - <view class="add_li">  
69 - <view class="add_li_box">  
70 - <view class="">  
71 - 入学测评成绩分析  
72 - </view> 92 + </view>
  93 +
  94 + <view class="card">
  95 + <view class="cell not-border">
  96 + <view class="cell-label">
  97 + 入学测评成绩分析
  98 + </view>
  99 + <view class="cell-content">
73 <view class="sf_v_btn_b" :class="{active:is_result==1}" @click="set_tch2"> 100 <view class="sf_v_btn_b" :class="{active:is_result==1}" @click="set_tch2">
74 <text class="icon icon-duigou"></text> 101 <text class="icon icon-duigou"></text>
75 </view> 102 </view>
76 </view> 103 </view>
77 </view> 104 </view>
78 -  
79 </view> 105 </view>
80 - <view class="bz_add" >  
81 - <view class="" @click="save_fuc">  
82 - 保存  
83 - </view>  
84 - <view v-if="options.id" class="del_btn" @click="del_fuc(options)"> 106 +
  107 + <view class="footer" >
  108 + <view v-if="options.id" class="btn del" @click="show = true">
85 删除 109 删除
86 </view> 110 </view>
  111 + <view class="btn" @click="save_fuc">
  112 + 保存
  113 + </view>
  114 +
87 </view> 115 </view>
  116 +
  117 + <u-modal
  118 + :show="show"
  119 + title="提示"
  120 + content="是否删除该记录?"
  121 + @confirm="del_fuc(options)"
  122 + @cancel="show = false"
  123 + :asyncClose="true"
  124 + :showCancelButton="true"
  125 + >
  126 + </u-modal>
  127 +
88 </view> 128 </view>
89 </template> 129 </template>
90 130
@@ -120,6 +160,8 @@ @@ -120,6 +160,8 @@
120 content_three:'', 160 content_three:'',
121 datas_stu:'', 161 datas_stu:'',
122 datas:'', 162 datas:'',
  163 +
  164 + show: false
123 }; 165 };
124 }, 166 },
125 computed: { 167 computed: {
@@ -138,85 +180,74 @@ @@ -138,85 +180,74 @@
138 }, 180 },
139 methods:{ 181 methods:{
140 del_fuc(item){ 182 del_fuc(item){
141 - //teacher/interviewr_del 常规访谈删除接口  
142 - //teacher/interview_del 入学关怀删除接口  
143 - uni.showModal({  
144 - title: '提示',  
145 - content: '是否删除该记录',  
146 - success: function (res) {  
147 - if (res.confirm) {  
148 - console.log('用户点击确定');  
149 - var jkurl='/teacher/interview_del'  
150 - // if(that.active==1){  
151 - // kurl='teacher/interview_del'  
152 - // }  
153 - var datas={  
154 - id:item.id  
155 - // address_id:''  
156 - }  
157 - var header={  
158 - 'content-type': 'application/json',  
159 - }  
160 - // that.$service.P_post(jkurl, datas,header).then(res => {  
161 - that1.$service.P_post(jkurl, datas).then(res => {  
162 - that1.btnkg = 0  
163 - console.log(res)  
164 - if (res.code == 1){  
165 - that1.htmlReset = 0  
166 - var datas = res.data  
167 - console.log(typeof datas)  
168 -  
169 - if (typeof datas == 'string') {  
170 - datas = JSON.parse(datas)  
171 - }  
172 - console.log(res)  
173 -  
174 - uni.showToast({  
175 - icon:'none',  
176 - title:'删除成功'  
177 - })  
178 - // that1.datas.splice(index,1)  
179 - setTimeout(()=>{  
180 - uni.navigateBack({  
181 - delta:1  
182 - })  
183 - },1000)  
184 - } else {  
185 -  
186 - if (res.msg) {  
187 - uni.showToast({  
188 - icon: 'none',  
189 - title: res.msg  
190 - })  
191 - } else {  
192 - uni.showToast({  
193 - icon: 'none',  
194 - title: '获取数据失败'  
195 - })  
196 - }  
197 - }  
198 - }).catch(e => {  
199 - that1.htmlReset = 1  
200 - that1.btnkg = 0  
201 - // that1.$refs.htmlLoading.htmlReset_fuc(1)  
202 - console.log(e)  
203 - uni.showToast({  
204 - icon: 'none',  
205 - title: '获取数据失败,请检查您的网络连接'  
206 - })  
207 - })  
208 - } else if (res.cancel) {  
209 - console.log('用户点击取消');  
210 - }  
211 - }  
212 - }); 183 + var jkurl='/teacher/interview_del'
  184 + // if(that.active==1){
  185 + // kurl='teacher/interview_del'
  186 + // }
  187 + var datas={
  188 + id:item.id
  189 + // address_id:''
  190 + }
  191 + var header={
  192 + 'content-type': 'application/json',
  193 + }
  194 + // that.$service.P_post(jkurl, datas,header).then(res => {
  195 + that1.$service.P_post(jkurl, datas).then(res => {
  196 + that1.btnkg = 0
  197 + console.log(res)
  198 + this.show = false;
  199 + if (res.code == 1){
  200 + that1.htmlReset = 0
  201 + var datas = res.data
  202 + console.log(typeof datas)
  203 +
  204 + if (typeof datas == 'string') {
  205 + datas = JSON.parse(datas)
  206 + }
  207 + console.log(res)
  208 +
  209 + uni.showToast({
  210 + icon:'none',
  211 + title:'删除成功'
  212 + })
  213 + // that1.datas.splice(index,1)
  214 + setTimeout(()=>{
  215 + uni.navigateBack({
  216 + delta:1
  217 + })
  218 + },1000)
  219 + } else {
  220 +
  221 + if (res.msg) {
  222 + uni.showToast({
  223 + icon: 'none',
  224 + title: res.msg
  225 + })
  226 + } else {
  227 + uni.showToast({
  228 + icon: 'none',
  229 + title: '获取数据失败'
  230 + })
  231 + }
  232 + }
  233 + }).catch(e => {
  234 + this.show = false;
  235 + that1.htmlReset = 1
  236 + that1.btnkg = 0
  237 + // that1.$refs.htmlLoading.htmlReset_fuc(1)
  238 + console.log(e)
  239 + uni.showToast({
  240 + icon: 'none',
  241 + title: '获取数据失败,请检查您的网络连接'
  242 + })
  243 + })
213 }, 244 },
214 stu_change(e){ 245 stu_change(e){
215 var index=e.detail.value 246 var index=e.detail.value
216 this.name = that1.datas_stu[index].name 247 this.name = that1.datas_stu[index].name
217 this.uid = that1.datas_stu[index].id 248 this.uid = that1.datas_stu[index].id
218 }, 249 },
219 - set_tch(){ 250 + set_tch(val){
220 if(that1.is_teacher==1){ 251 if(that1.is_teacher==1){
221 that1.is_teacher=2 252 that1.is_teacher=2
222 }else{ 253 }else{
@@ -453,88 +484,124 @@ @@ -453,88 +484,124 @@
453 } 484 }
454 </script> 485 </script>
455 486
456 -<style lang="less" scoped>  
457 - .stu_list {  
458 - width: 100%;  
459 - min-height: 100rpx;  
460 - background: #FFFFFF;  
461 - border-radius: 10rpx;  
462 - .add_li{  
463 - width: 100%;  
464 - min-height: 90rpx;  
465 - padding:28rpx 30rpx;  
466 - &+.add_li{  
467 - border-top: 1px solid #eee; 487 +<style lang="scss" scoped>
  488 + .container {
  489 + padding: 25rpx 25rpx 140rpx;
  490 + }
  491 +
  492 + .card {
  493 + padding: 0 30rpx;
  494 + background-color: #fff;
  495 + border-radius: 20rpx;
  496 + & + .card {
  497 + margin-top: 20rpx;
  498 + }
  499 + .cell {
  500 + padding: 30rpx 0;
  501 + display: flex;
  502 + align-items: center;
  503 + border-bottom: 1px solid #F3F3F7;
  504 + & .not-border {
  505 + border: 0;
468 } 506 }
469 - .add_li_box{  
470 - width: 100%;  
471 - display: flex;  
472 - align-items: center;  
473 - justify-content: space-between; 507 +
  508 + &-label {
474 font-size: 30rpx; 509 font-size: 30rpx;
475 - color: #545d71;  
476 - input{ 510 + font-family: PingFang SC;
  511 + font-weight: 500;
  512 + color: #000000;
  513 + }
  514 + &-content {
  515 + flex: 1;
  516 + font-size: 28rpx;
  517 + font-family: PingFang SC;
  518 + font-weight: 400;
  519 + color: #646464;
  520 + display: flex;
  521 + justify-content: flex-end;
  522 + input {
  523 + width: 100%;
477 text-align: right; 524 text-align: right;
478 - min-width: 0;  
479 - font-size: 30rpx;  
480 } 525 }
481 - .sf_v_btn_b{  
482 - display: flex;  
483 - align-items: center;  
484 - justify-content: center; 526 + }
  527 + .icon {
  528 + color: #ACACAC;
  529 + font-size: 30rpx;
  530 + }
  531 +
  532 + .sf_v_btn_b{
  533 + display: flex;
  534 + align-items: center;
  535 + justify-content: center;
  536 + font-size: 18rpx;
  537 + color: #fff;
  538 + width: 32rpx;
  539 + height: 32rpx;
  540 + border: 1px solid #DEDEDE;
  541 + border-radius: 8rpx;
  542 + &.active{
  543 + background: #2D81FF;
  544 + border: 1px solid #2D81FF;
  545 + }
  546 + text{
485 font-size: 18rpx; 547 font-size: 18rpx;
  548 + line-height: 20rpx;
486 color: #fff; 549 color: #fff;
487 - width: 32rpx;  
488 - height: 32rpx;  
489 - border: 1px solid #DEDEDE;  
490 - border-radius: 8rpx;  
491 - &.active{  
492 - background: #2D81FF;  
493 - border: 1px solid #2D81FF;  
494 - }  
495 - text{  
496 - font-size: 18rpx;  
497 - line-height: 20rpx;  
498 - }  
499 } 550 }
500 } 551 }
501 - .add_li_tit{  
502 - font-size: 30rpx;  
503 - color: #545D71;  
504 - line-height: 43rpx;  
505 - margin-bottom: 12rpx; 552 +
  553 + textarea {
  554 + width: 100%;
  555 + height: 230rpx;
  556 + background: #F5F6F8;
  557 + padding: 20rpx;
  558 + box-sizing: border-box;
506 } 559 }
507 - .add_li_content{  
508 - font-size: 30rpx;  
509 - color: #A6A9B1;  
510 - line-height: 43rpx; 560 + :deep(.textarea-placeholder) {
  561 + color: #979797;
  562 + }
  563 + }
  564 + .column {
  565 + flex-direction: column;
  566 + .cell-label {
  567 + width: 100%;
  568 + }
  569 + .cell-content {
  570 + margin-top: 20rpx;
511 width: 100%; 571 width: 100%;
512 - height: 120rpx;  
513 - letter-spacing:0;  
514 } 572 }
515 } 573 }
516 } 574 }
517 - .bz_add{ 575 +
  576 +
  577 + .footer {
  578 + position: fixed;
  579 + left: 0;
  580 + bottom: 0;
  581 + z-index: 99;
518 width: 100%; 582 width: 100%;
519 - // position: fixed;  
520 - // bottom: 0;  
521 - // background: #f8f8f8;  
522 - // z-index: 800;  
523 - // left: 0;  
524 - padding: 30rpx 0;  
525 - view{  
526 - font-size: 32rpx;  
527 - color: #FFFFFF;  
528 - width: 100%;  
529 - height: 90rpx; 583 + background-color: #fff;
  584 + padding: 16rpx 25rpx;
  585 + display: flex;
  586 + align-items: center;
  587 + .btn {
  588 + flex: 1;
  589 + height: 88rpx;
530 background: #2D81FF; 590 background: #2D81FF;
531 - border-radius: 10rpx;  
532 - display: flex;  
533 - align-items: center;  
534 - justify-content: center;  
535 - }  
536 - .del_btn{  
537 - margin-top: 20rpx; 591 + border-radius: 44rpx;
  592 + line-height: 88rpx;
  593 + font-size: 34rpx;
  594 + font-family: PingFang SC;
  595 + font-weight: 500;
  596 + color: #FFFFFF;
  597 + text-align: center;
  598 + &.del {
  599 + background: #EBEBEB;
  600 + color: #323232;
  601 + }
  602 + & + .btn {
  603 + margin-left: 20rpx;
  604 + }
538 } 605 }
539 } 606 }
540 </style> 607 </style>
1 <template> 1 <template>
2 - <view>  
3 - <view class="stu_list">  
4 - <view class="add_li">  
5 - <picker v-if="datas_stu.length>0" mode="selector" :range="datas_stu" range-key="name" @change="stu_change">  
6 - <view class="add_li_box">  
7 - <view class="">  
8 - 学员姓名  
9 - </view> 2 + <view class="container">
  3 +
  4 + <view class="card">
  5 + <picker v-if="datas_stu.length>0" mode="selector" :range="datas_stu" range-key="name" @change="stu_change">
  6 + <view class="cell">
  7 + <view class="cell-label">
  8 + 学员姓名
  9 + </view>
  10 + <view class="cell-content">
10 <input type="text" placeholder="请选择" v-model="name" disabled="true"> 11 <input type="text" placeholder="请选择" v-model="name" disabled="true">
11 </view> 12 </view>
12 - </picker>  
13 - </view>  
14 - <view class="add_li">  
15 - <picker mode="date" :value="sx_time" :start="startDate" :end="endDate" @change="bindDateChange">  
16 - <view class="add_li_box">  
17 - <view class=""> 13 + </view>
  14 + </picker>
  15 +
  16 + <picker mode="date" :value="sx_time" :start="startDate" :end="endDate" @change="bindDateChange">
  17 + <view class="cell">
  18 + <view class="cell-label">
18 访谈时间 19 访谈时间
19 </view> 20 </view>
20 - <view class=""> 21 + <view class="cell-content">
21 {{sx_time?sx_time:'请选择'}} 22 {{sx_time?sx_time:'请选择'}}
22 </view> 23 </view>
23 </view> 24 </view>
24 - </picker>  
25 - </view> 25 + </picker>
26 26
27 - <view class="add_li" v-for="(item,index) in diy_data">  
28 - <view class="add_li_tit">  
29 - {{item.title}} 27 + </view>
  28 +
  29 + <view class="card">
  30 + <view class="cell">
  31 + <view class="cell-label">
  32 + 自定义标题与内容
30 </view> 33 </view>
31 - <view class="add_li_content">  
32 - {{item.content}} 34 + <view class="cell-content">
  35 + <view class="add_diy" @click="tk_show=true">
  36 + <view class="icon">+</view>
  37 + <view>
  38 + 添加
  39 + </view>
  40 + </view>
33 </view> 41 </view>
34 -  
35 </view> 42 </view>
36 -  
37 - <view class="add_li">  
38 - <view class="add_li_box">  
39 - <view class="">  
40 - 自定义标题与内容  
41 - </view>  
42 - <view class="add_diy" @click="tk_show=true">  
43 - 添加 43 + <view
  44 + class="cell column"
  45 + v-for="(item,index) in diy_data"
  46 + :key="index"
  47 + :class="{'not-border': index === (diy_data.length -1)}"
  48 + >
  49 + <view class="cell-label">
  50 + {{item.title}}
  51 + </view>
  52 + <view class="cell-content">
  53 + <view class="textarea-view">
  54 + {{item.content}}
44 </view> 55 </view>
45 </view> 56 </view>
46 </view> 57 </view>
47 -  
48 </view> 58 </view>
  59 +
49 <u-popup :show="tk_show" @close="close" @open="open"> 60 <u-popup :show="tk_show" @close="close" @open="open">
50 <view class="tk_box_s"> 61 <view class="tk_box_s">
51 - <view class="pop_tit">  
52 - <view class="" @click="close">  
53 - 取消  
54 - </view>  
55 - <view class="pop_tit_t" @click="save_diy">  
56 - 确定  
57 - </view> 62 + <view class="pop_tit">
  63 + <view class="" @click="close">
  64 + 取消
58 </view> 65 </view>
59 - <input class="diy_tit" type="text" placeholder="请输入标题" v-model="diy_tit">  
60 - <textarea class="diy_content" placeholder="请输入内容" v-model="diy_content"></textarea> 66 + <view class="pop_tit_t" @click="save_diy">
  67 + 确定
  68 + </view>
  69 + </view>
  70 + <input class="diy_tit" type="text" placeholder="请输入标题" v-model="diy_tit">
  71 + <textarea class="diy_content" placeholder="请输入内容" v-model="diy_content"></textarea>
61 </view> 72 </view>
62 </u-popup> 73 </u-popup>
63 - <view class="bz_add" >  
64 - <view class="" @click="save_fuc">  
65 - 保存  
66 - </view>  
67 - <view v-if="options.id" class="del_btn" @click="del_fuc(options)"> 74 +
  75 + <view class="footer" >
  76 + <view v-if="options.id" class="btn del" @click="show = true">
68 删除 77 删除
69 </view> 78 </view>
  79 + <view class="btn" @click="save_fuc">
  80 + 保存
  81 + </view>
  82 +
70 </view> 83 </view>
  84 +
  85 + <u-modal
  86 + :show="show"
  87 + title="提示"
  88 + content="是否删除该记录?"
  89 + @confirm="del_fuc(options)"
  90 + @cancel="show = false"
  91 + :asyncClose="true"
  92 + :showCancelButton="true"
  93 + >
  94 + </u-modal>
71 </view> 95 </view>
72 </template> 96 </template>
73 97
@@ -105,7 +129,9 @@ @@ -105,7 +129,9 @@
105 diy_tit:'', 129 diy_tit:'',
106 diy_content:'', 130 diy_content:'',
107 diy_data:[], 131 diy_data:[],
108 - datas_stu:[] 132 + datas_stu:[],
  133 +
  134 + show: false
109 }; 135 };
110 }, 136 },
111 computed: { 137 computed: {
@@ -124,75 +150,64 @@ @@ -124,75 +150,64 @@
124 }, 150 },
125 methods:{ 151 methods:{
126 del_fuc(item){ 152 del_fuc(item){
127 - //teacher/interviewr_del 常规访谈删除接口  
128 - //teacher/interview_del 入学关怀删除接口  
129 - uni.showModal({  
130 - title: '提示',  
131 - content: '是否删除该记录',  
132 - success: function (res) {  
133 - if (res.confirm) {  
134 - console.log('用户点击确定');  
135 - var jkurl='teacher/interviewr_del'  
136 - var datas={  
137 - id:item.id  
138 - // address_id:''  
139 - }  
140 - var header={  
141 - 'content-type': 'application/json',  
142 - }  
143 - // that.$service.P_post(jkurl, datas,header).then(res => {  
144 - that1.$service.P_post(jkurl, datas).then(res => {  
145 - that1.btnkg = 0  
146 - console.log(res)  
147 - if (res.code == 1){  
148 - that1.htmlReset = 0  
149 - var datas = res.data  
150 - console.log(typeof datas)  
151 -  
152 - if (typeof datas == 'string') {  
153 - datas = JSON.parse(datas)  
154 - }  
155 - console.log(res)  
156 -  
157 - uni.showToast({  
158 - icon:'none',  
159 - title:'删除成功'  
160 - })  
161 - // that1.datas.splice(index,1)  
162 - setTimeout(()=>{  
163 - uni.navigateBack({  
164 - delta:1  
165 - })  
166 - },1000)  
167 - } else {  
168 -  
169 - if (res.msg) {  
170 - uni.showToast({  
171 - icon: 'none',  
172 - title: res.msg  
173 - })  
174 - } else {  
175 - uni.showToast({  
176 - icon: 'none',  
177 - title: '获取数据失败'  
178 - })  
179 - }  
180 - }  
181 - }).catch(e => {  
182 - that1.htmlReset = 1  
183 - that1.btnkg = 0  
184 - // that1.$refs.htmlLoading.htmlReset_fuc(1)  
185 - console.log(e)  
186 - uni.showToast({  
187 - icon: 'none',  
188 - title: '获取数据失败,请检查您的网络连接'  
189 - })  
190 - })  
191 - } else if (res.cancel) {  
192 - console.log('用户点击取消');  
193 - }  
194 - }  
195 - }); 153 + var jkurl='teacher/interviewr_del'
  154 + var datas={
  155 + id:item.id
  156 + // address_id:''
  157 + }
  158 + var header={
  159 + 'content-type': 'application/json',
  160 + }
  161 + // that.$service.P_post(jkurl, datas,header).then(res => {
  162 + that1.$service.P_post(jkurl, datas).then(res => {
  163 + this.show = false;
  164 + that1.btnkg = 0
  165 + console.log(res)
  166 + if (res.code == 1){
  167 + that1.htmlReset = 0
  168 + var datas = res.data
  169 + console.log(typeof datas)
  170 +
  171 + if (typeof datas == 'string') {
  172 + datas = JSON.parse(datas)
  173 + }
  174 + console.log(res)
  175 +
  176 + uni.showToast({
  177 + icon:'none',
  178 + title:'删除成功'
  179 + })
  180 + // that1.datas.splice(index,1)
  181 + setTimeout(()=>{
  182 + uni.navigateBack({
  183 + delta:1
  184 + })
  185 + },1000)
  186 + } else {
  187 +
  188 + if (res.msg) {
  189 + uni.showToast({
  190 + icon: 'none',
  191 + title: res.msg
  192 + })
  193 + } else {
  194 + uni.showToast({
  195 + icon: 'none',
  196 + title: '获取数据失败'
  197 + })
  198 + }
  199 + }
  200 + }).catch(e => {
  201 + this.show = false;
  202 + that1.htmlReset = 1
  203 + that1.btnkg = 0
  204 + // that1.$refs.htmlLoading.htmlReset_fuc(1)
  205 + console.log(e)
  206 + uni.showToast({
  207 + icon: 'none',
  208 + title: '获取数据失败,请检查您的网络连接'
  209 + })
  210 + })
196 }, 211 },
197 stu_change(e){ 212 stu_change(e){
198 var index=e.detail.value 213 var index=e.detail.value
@@ -435,125 +450,187 @@ @@ -435,125 +450,187 @@
435 } 450 }
436 </script> 451 </script>
437 452
438 -<style lang="less" scoped>  
439 - .stu_list {  
440 - width: 100%;  
441 - min-height: 100rpx;  
442 - background: #FFFFFF;  
443 - border-radius: 10rpx;  
444 - .add_li{  
445 - width: 100%;  
446 - min-height: 90rpx;  
447 - padding:28rpx 30rpx;  
448 - &+.add_li{  
449 - border-top: 1px solid #eee; 453 +<style lang="scss" scoped>
  454 + .container {
  455 + padding: 25rpx 25rpx 140rpx;
  456 + }
  457 +
  458 + .card {
  459 + padding: 0 30rpx;
  460 + background-color: #fff;
  461 + border-radius: 20rpx;
  462 + & + .card {
  463 + margin-top: 20rpx;
  464 + }
  465 + .cell {
  466 + padding: 30rpx 0;
  467 + display: flex;
  468 + align-items: center;
  469 + border-bottom: 1px solid #F3F3F7;
  470 + & .not-border {
  471 + border: 0;
450 } 472 }
451 - .add_li_box{  
452 - width: 100%;  
453 - display: flex;  
454 - align-items: center;  
455 - justify-content: space-between; 473 +
  474 + &-label {
456 font-size: 30rpx; 475 font-size: 30rpx;
457 - color: #545d71;  
458 - input{ 476 + font-family: PingFang SC;
  477 + font-weight: 500;
  478 + color: #000000;
  479 + }
  480 + &-content {
  481 + flex: 1;
  482 + font-size: 28rpx;
  483 + font-family: PingFang SC;
  484 + font-weight: 400;
  485 + color: #646464;
  486 + display: flex;
  487 + justify-content: flex-end;
  488 + input {
  489 + width: 100%;
459 text-align: right; 490 text-align: right;
460 - min-width: 0;  
461 - font-size: 30rpx;  
462 } 491 }
463 - .sf_v_btn_b{  
464 - display: flex;  
465 - align-items: center;  
466 - justify-content: center; 492 + }
  493 + .icon {
  494 + color: #ACACAC;
  495 + font-size: 30rpx;
  496 + }
  497 +
  498 + .sf_v_btn_b{
  499 + display: flex;
  500 + align-items: center;
  501 + justify-content: center;
  502 + font-size: 18rpx;
  503 + color: #fff;
  504 + width: 32rpx;
  505 + height: 32rpx;
  506 + border: 1px solid #DEDEDE;
  507 + border-radius: 8rpx;
  508 + &.active{
  509 + background: #2D81FF;
  510 + border: 1px solid #2D81FF;
  511 + }
  512 + text{
467 font-size: 18rpx; 513 font-size: 18rpx;
  514 + line-height: 20rpx;
468 color: #fff; 515 color: #fff;
469 - width: 32rpx;  
470 - height: 32rpx;  
471 - border: 1px solid #DEDEDE;  
472 - border-radius: 8rpx;  
473 - &.active{  
474 - background: #2D81FF;  
475 - border: 1px solid #2D81FF;  
476 - }  
477 - text{  
478 - font-size: 18rpx;  
479 - line-height: 20rpx;  
480 - }  
481 } 516 }
482 - .add_diy{  
483 - font-size: 30rpx;  
484 - color: #2D81FF; 517 + }
  518 +
  519 + textarea {
  520 + width: 100%;
  521 + height: 230rpx;
  522 + background: #F5F6F8;
  523 + padding: 20rpx;
  524 + box-sizing: border-box;
  525 + }
  526 + :deep(.textarea-placeholder) {
  527 + color: #979797;
  528 + }
  529 + .textarea-view {
  530 + width: 100%;
  531 + background: #F5F6F8;
  532 + padding: 20rpx;
  533 + box-sizing: border-box;
  534 + font-size: 26rpx;
  535 + font-family: PingFang SC;
  536 + font-weight: 400;
  537 + color: #646464;
  538 + }
  539 +
  540 + .add_diy{
  541 + font-size: 28rpx;
  542 + font-family: PingFang SC;
  543 + font-weight: 400;
  544 + color: #646464;
  545 + display: flex;
  546 + align-items: center;
  547 + justify-content: flex-end;
  548 + .icon {
  549 + background: #2D81FF;
  550 + font-size: 24rpx;
  551 + margin-right: 20rpx;
  552 + width: 30rpx;
  553 + height: 30rpx;
  554 + text-align: center;
  555 + line-height: 30rpx;
  556 + color: #fff;
485 } 557 }
486 } 558 }
487 - .add_li_tit{  
488 - font-size: 30rpx;  
489 - color: #545D71;  
490 - line-height: 43rpx;  
491 - margin-bottom: 12rpx; 559 + }
  560 + .column {
  561 + flex-direction: column;
  562 + .cell-label {
  563 + width: 100%;
492 } 564 }
493 - .add_li_content{  
494 - font-size: 30rpx;  
495 - color: #A6A9B1;  
496 - line-height: 43rpx; 565 + .cell-content {
  566 + margin-top: 20rpx;
497 width: 100%; 567 width: 100%;
498 - // height: 120rpx;  
499 - letter-spacing:0;  
500 } 568 }
501 } 569 }
502 } 570 }
503 - .bz_add{  
504 - width: 100%;  
505 - // position: fixed;  
506 - // bottom: 0;  
507 - // background: #f8f8f8;  
508 - // z-index: 800;  
509 - // left: 0;  
510 - padding: 30rpx 0;  
511 - view{  
512 - font-size: 32rpx;  
513 - color: #FFFFFF; 571 +
  572 + .tk_box_s {
  573 + background: #ffffff;
  574 + .pop_tit{
514 width: 100%; 575 width: 100%;
515 - height: 90rpx;  
516 - background: #2D81FF;  
517 - border-radius: 10rpx; 576 + height: 100rpx;
  577 + font-size: 30rpx;
  578 + color: #A9B1C0;
518 display: flex; 579 display: flex;
519 align-items: center; 580 align-items: center;
520 - justify-content: center; 581 + justify-content: space-between;
  582 + padding: 0 30rpx;
  583 + .pop_tit_t{
  584 + color: #2D81FF;
  585 + }
521 } 586 }
522 - .del_btn{  
523 - margin-top: 20rpx; 587 + .diy_tit{
  588 + width: 100%;
  589 + height: 100rpx;
  590 + padding: 0 30rpx;
  591 + font-size: 30rpx;
  592 + color: #333;
  593 + border-bottom: 1px solid #EEEEEE;
  594 + }
  595 + .diy_content{
  596 + width: 100%;
  597 + height: 790rpx;
  598 + padding: 30rpx;
  599 + font-size: 30rpx;
  600 + color: #333;
  601 + box-sizing: border-box;
524 } 602 }
525 } 603 }
526 - .pop_tit{ 604 +
  605 + .footer {
  606 + position: fixed;
  607 + left: 0;
  608 + bottom: 0;
  609 + z-index: 99;
527 width: 100%; 610 width: 100%;
528 - height: 100rpx;  
529 - font-size: 30rpx;  
530 - color: #A9B1C0; 611 + background-color: #fff;
  612 + padding: 16rpx 25rpx;
531 display: flex; 613 display: flex;
532 align-items: center; 614 align-items: center;
533 - justify-content: space-between;  
534 - padding: 0 30rpx;  
535 - .pop_tit_t{  
536 - color: #2D81FF; 615 + .btn {
  616 + flex: 1;
  617 + height: 88rpx;
  618 + background: #2D81FF;
  619 + border-radius: 44rpx;
  620 + line-height: 88rpx;
  621 + font-size: 34rpx;
  622 + font-family: PingFang SC;
  623 + font-weight: 500;
  624 + color: #FFFFFF;
  625 + text-align: center;
  626 + &.del {
  627 + background: #EBEBEB;
  628 + color: #323232;
  629 + }
  630 + & + .btn {
  631 + margin-left: 20rpx;
  632 + }
537 } 633 }
538 } 634 }
539 - .tk_box_s{  
540 - // height: 600rpx;  
541 - background: #ffffff;  
542 - }  
543 - .diy_tit{  
544 - width: 100%;  
545 - height: 100rpx;  
546 - padding: 0 30rpx;  
547 - font-size: 30rpx;  
548 - color: #333;  
549 - border-bottom: 1px solid #EEEEEE;  
550 - }  
551 - .diy_content{  
552 - width: 100%;  
553 - height: 790rpx;  
554 - padding: 30rpx;  
555 - font-size: 30rpx;  
556 - color: #333;  
557 - box-sizing: border-box;  
558 - } 635 +
559 </style> 636 </style>
1 <template> 1 <template>
2 <view class="teacher_praise"> 2 <view class="teacher_praise">
3 - <view class="tel_index_bg"></view>  
4 - <view class="teacher_praise-main">  
5 - <scroll-view :scroll-y="true" class="praise_andLike-list" @scrolltolower="getData">  
6 - <view v-if="dataList.length">  
7 - <praise-item :type="LIKETYPE.TEACHERSEND" :info="item" v-for="item in dataList" :key="item.id"></praise-item> 3 + <view class="card" v-for="item in dataList" :key="item.id">
  4 + <view class="user">
  5 + <u--image
  6 + shape="circle"
  7 + height="60rpx"
  8 + width="60rpx"
  9 + :src="item.uimg"
  10 + >
  11 + </u--image>
  12 + <view class="info">
  13 + <view class="name">
  14 + {{ item.uname }}
  15 + </view>
  16 + <view class="time">
  17 + {{ item.create_time }}
  18 + </view>
8 </view> 19 </view>
9 - <u-empty v-else mode="data" icon="http://cdn.uviewui.com/uview/empty/data.png" ></u-empty>  
10 - </scroll-view>  
11 - 20 + </view>
  21 + <view class="content">
  22 + {{ item.content }}
  23 + </view>
12 </view> 24 </view>
  25 + <u-empty v-if="!dataList.length" mode="data" icon="http://cdn.uviewui.com/uview/empty/data.png" ></u-empty>
13 </view> 26 </view>
14 </template> 27 </template>
15 28
16 <script> 29 <script>
17 - import praise_item from "@/components/praise_item/praise_item.vue"  
18 import { LIKETYPE } from "@/emit/index.js" 30 import { LIKETYPE } from "@/emit/index.js"
19 export default { 31 export default {
20 - components: {  
21 - PraiseItem: praise_item  
22 - },  
23 data() { 32 data() {
24 return { 33 return {
25 LIKETYPE, 34 LIKETYPE,
@@ -57,20 +66,41 @@ @@ -57,20 +66,41 @@
57 66
58 <style lang="scss"> 67 <style lang="scss">
59 .teacher_praise{ 68 .teacher_praise{
60 - .tel_index_bg{  
61 - position: absolute;  
62 - top: 0;  
63 - z-index: 1;  
64 - width: 100%;  
65 - min-height: 220rpx;  
66 - background: linear-gradient(0deg, #f8f8f8 0%, #ffffff 25%, #5D9DFD 60%, #428EFE 70%, #2D81FF 100%);  
67 - }  
68 - .teacher_praise-main{  
69 - padding: 40rpx 25rpx;  
70 - position: relative;  
71 - z-index: 1;  
72 - .praise_andLike-list{  
73 - height: calc(100vh - 122rpx); 69 + padding: 25rpx;
  70 + .card {
  71 + padding: 30rpx;
  72 + background-color: #fff;
  73 + border-radius: 20rpx;
  74 + & + .card {
  75 + margin-top: 20rpx;
  76 + }
  77 + .user {
  78 + display: flex;
  79 + .info {
  80 + flex: 1;
  81 + margin-left: 30rpx;
  82 + .name {
  83 + font-size: 26rpx;
  84 + font-family: PingFang SC;
  85 + font-weight: 500;
  86 + color: #323232;
  87 + }
  88 + .time {
  89 + font-size: 24rpx;
  90 + font-family: PingFang SC;
  91 + font-weight: 400;
  92 + color: #979797;
  93 + margin-top: 10rpx;
  94 + }
  95 + }
  96 + }
  97 + .content {
  98 + font-size: 26rpx;
  99 + font-family: PingFang SC;
  100 + font-weight: 400;
  101 + color: #323232;
  102 + line-height: 42px;
  103 + margin-top: 20rpx;
74 } 104 }
75 } 105 }
76 } 106 }
@@ -175,7 +175,8 @@ @@ -175,7 +175,8 @@
175 "style" : 175 "style" :
176 { 176 {
177 "navigationBarTitleText": "星级排行榜", 177 "navigationBarTitleText": "星级排行榜",
178 - "enablePullDownRefresh": false 178 + "enablePullDownRefresh": false,
  179 + "navigationStyle": "custom"
179 } 180 }
180 181
181 } 182 }
@@ -461,14 +462,16 @@ @@ -461,14 +462,16 @@
461 "path": "tch_kq/tch_kq", 462 "path": "tch_kq/tch_kq",
462 "style": { 463 "style": {
463 "navigationBarTitleText": "考勤积分", 464 "navigationBarTitleText": "考勤积分",
464 - "enablePullDownRefresh": false 465 + "enablePullDownRefresh": false,
  466 + "navigationStyle": "custom"
465 } 467 }
466 468
467 }, { 469 }, {
468 "path": "tch_rank/tch_rank", 470 "path": "tch_rank/tch_rank",
469 "style": { 471 "style": {
470 - "navigationBarTitleText": "班级排行榜",  
471 - "enablePullDownRefresh": false 472 + "navigationBarTitleText": "校园排行榜",
  473 + "enablePullDownRefresh": false,
  474 + "navigationStyle": "custom"
472 } 475 }
473 476
474 }, { 477 }, {
@@ -558,7 +561,7 @@ @@ -558,7 +561,7 @@
558 }, { 561 }, {
559 "path": "tch_msg/tch_msg", 562 "path": "tch_msg/tch_msg",
560 "style": { 563 "style": {
561 - "navigationBarTitleText": "设置", 564 + "navigationBarTitleText": "修改资料",
562 "enablePullDownRefresh": false 565 "enablePullDownRefresh": false
563 } 566 }
564 567
1 -<template>  
2 - <view class="wrap_box">  
3 - <!-- <uParse v-if="datas" :content="datas"></uParse> -->  
4 - <topbar bg_color="#2d81ff">  
5 - <text style="color: #fff;"></text>  
6 - <text style="color: #fff;">首页</text>  
7 - <text style="color: #fff;"></text>  
8 - </topbar>  
9 - <view class="tch_box">  
10 - <view class="tel_index_bg"></view>  
11 - <view v-if="userDatas" class="tch_main">  
12 - <view class="tch_user dis_flex aic " @click="$service.jump" data-url="/pagesA/tch_msg/tch_msg">  
13 - <!-- <image class="user_tx" src="/static/images/tx.png" mode="aspectFill"></image> -->  
14 - <myLazyLoad class="user_tx" :src="$service.getimg(userDatas.img)" mode="aspectFill" :borderRadius="112"></myLazyLoad>  
15 - <view class="flex_1" @click="cli_fuc">  
16 - <view class="user_name dis_flex aic">  
17 - {{userDatas.nick||''}}  
18 - <text v-if="userDatas.is_assistant == 2">班主任</text>  
19 - <text v-else>助教老师</text>  
20 - </view>  
21 - <view class="user_id" >{{userDatas.class_title||''}}</view>  
22 - </view>  
23 - <text class="icon icon-arrow-right-copy"></text>  
24 - </view>  
25 - <!-- 班级概况 start -->  
26 -  
27 - <view class="tit_box">班级概况</view>  
28 - <view class="tch_banji">  
29 - <view class="bjf dis_flex_c aic ju_c" @click="$service.jump" data-url="/pagesA/tch_kq/tch_kq" data-login="true">  
30 - <view class="bjf_num">{{userDatas.class_num||''}}</view>  
31 - <view class="bjf_text">  
32 - 班级分  
33 - <text class="icon icon-arrow-right-copy"></text>  
34 - </view>  
35 - </view>  
36 - <view class="bj_sg"></view>  
37 - <view class="bj_xq">  
38 - <view class="bj_pai dis_flex aic" @click="$service.jump" data-url="/pagesA/tch_rank/tch_rank" data-login="true">  
39 - <text class="bj_pait"></text>  
40 - <view class="flex_1">班级排名</view>  
41 - <view class="bj_painum">第{{userDatas.class_sort||''}}名</view>  
42 - <text class="icon icon-arrow-right-copy"></text>  
43 - </view>  
44 - <view class="bj_pai dis_flex aic" @click="$service.jump" data-url="/pagesA/tch_vio/tch_vio" data-login="true">  
45 - <text class="bj_paiw"></text>  
46 - <view class="flex_1">违纪情况</view>  
47 - <view class="bj_painum">{{userDatas.class_break||''}}</view>  
48 - <text class="icon icon-arrow-right-copy"></text>  
49 - </view>  
50 - </view>  
51 - </view>  
52 - <!-- 班级概况 end -->  
53 - <!-- 学员概况 start -->  
54 - <view class="tit_box">学员概况</view>  
55 - <view class="xygk">  
56 - <view class="gk_li" @click="$service.jump" data-url="/pagesA/stu_list/stu_list" data-login="true">  
57 - <image src="/static/images/tch/home_icon_namelist.png" mode="aspectFit"></image>  
58 - 本班学员名单  
59 - </view>  
60 - <view class="gk_li" @click="$service.jump" data-url="/pagesA/stumsg_list/stumsg_list" data-login="true">  
61 - <image src="/static/images/tch/home_icon_archives.png" mode="aspectFit"></image>  
62 - 学员档案信息  
63 - </view>  
64 - <view class="gk_li" @click="$service.jump" data-url="/pagesA/stu_ft_list/stu_ft_list" data-login="true">  
65 - <image src="/static/images/tch/home_icon_records.png" mode="aspectFit"></image>  
66 - 学员访谈记录  
67 - </view>  
68 - <view class="gk_li" @click="$service.jump" data-url="/pagesA/stu_hddk_add/stu_hddk_add" data-login="true">  
69 - <image src="/static/images/tch/home_icon_checklist.png" mode="aspectFit"></image>  
70 - 核对到课名单  
71 - </view>  
72 - <view class="gk_li" @click="$service.jump" data-url="/pages_v2/thc_my_pf/thc_my_pf" data-login="true">  
73 - <image src="/static/images/v2/my_pf.png" mode="aspectFit"></image>  
74 - 学员对我的评分  
75 - </view>  
76 - <view class="gk_li" @click="$service.jump" data-url="/pages_v2/tch_pf_list/tch_pf_list" data-login="true">  
77 - <image src="/static/images/v2/rank.png" mode="aspectFit"></image>  
78 - 星级排行榜  
79 - </view>  
80 - <view class="gk_li" @click="$service.jump" data-url="/page_admin/teacher_praise/teacher_praise" data-login="true">  
81 - <image src="/static/images/v2/biaoyangdainz.png" mode="aspectFit"></image>  
82 - 点赞表扬  
83 - </view>  
84 - </view>  
85 - <!-- <view class="tit_box">学员对我的评分</view> -->  
86 - <!-- 学员概况 end -->  
87 - <!-- 近期入学名单 start -->  
88 - <view class="tit_box">近期入学名单</view>  
89 - <view class="rxmd_list">  
90 - <view class="rxmd_li" v-for="(item,index) in md_list" :key="index">  
91 - <view class="rxmd_li_name dis_flex aic">  
92 - <text class="oh1">{{item.name}} </text>  
93 - <image v-if="item.sex==2" src="/static/images/tch/icon_female.png" mode="aspectFit"></image>  
94 - <image v-else src="/static/images/tch/icon_male.png" mode="aspectFit"></image>  
95 - </view>  
96 - <view class="rxmd_li_id flex_1">  
97 - {{item.phone||''}}  
98 - </view>  
99 - <view class="rxmd_li_time">  
100 - {{item.add_time||''}} 入学  
101 - </view>  
102 - </view>  
103 - <u-empty v-if="md_list.length==0"  
104 - mode="data"  
105 - text="暂无名单"  
106 - icon="/static/images/tch/img_blank.png"  
107 - >  
108 - </u-empty>  
109 - </view>  
110 - <!-- 近期入学名单 end -->  
111 - </view>  
112 - </view>  
113 - <!-- 阻止滑动 -->  
114 - <!-- <view @touchmove.stop.prevent='test'></view> -->  
115 - </view>  
116 -</template>  
117 -  
118 -<script>  
119 - import Vue from 'vue'  
120 - import {  
121 - mapState,  
122 - mapMutations  
123 - } from 'vuex'  
124 - var that  
125 - export default {  
126 - data() {  
127 - return {  
128 - options:'',  
129 - datas:'',  
130 - md_list:[],  
131 - shownum:0  
132 - }  
133 - },  
134 - computed: {  
135 - ...mapState(['hasLogin', 'forcedLogin', 'userName', 'userinfo','nowtime', 'userDatas']),  
136 - },  
137 - onLoad(e) {  
138 - that=this  
139 - that.options=e||{}  
140 - console.log(e)  
141 -  
142 - that.getdata()  
143 - },  
144 - onShow() {  
145 - if(that.shownum>0){  
146 - that.getdata()  
147 - }  
148 - that.shownum++  
149 - },  
150 - methods: {  
151 - // ...mapMutations(['wxshouquan','login']),  
152 - test(){},  
153 - cli_fuc(){  
154 - console.log(1)  
155 - },  
156 - getdata() {  
157 -  
158 - var datas = {}  
159 - var jkurl = '/teacher'  
160 -  
161 - that.$service.P_post(jkurl, datas).then(res => {  
162 - that.btnkg = 0  
163 - console.log(res)  
164 - if (res.code == 1) {  
165 - that.htmlReset = 0  
166 - var datas = res.data  
167 - console.log(typeof datas)  
168 -  
169 - if (typeof datas == 'string') {  
170 - datas = JSON.parse(datas)  
171 - }  
172 - console.log(res)  
173 - that.$store.commit('setuser', datas)  
174 - if(datas.list){  
175 - that.md_list=datas.list.data  
176 - }  
177 - } else {  
178 -  
179 - if (res.msg) {  
180 - uni.showToast({  
181 - icon: 'none',  
182 - title: res.msg  
183 - })  
184 - } else {  
185 - uni.showToast({  
186 - icon: 'none',  
187 - title: '获取数据失败'  
188 - })  
189 - }  
190 - }  
191 - }).catch(e => {  
192 - that.htmlReset = 1  
193 - that.btnkg = 0  
194 - // that.$refs.htmlLoading.htmlReset_fuc(1)  
195 - console.log(e)  
196 - uni.showToast({  
197 - icon: 'none',  
198 - title: '获取数据失败,请检查您的网络连接'  
199 - })  
200 - })  
201 - },  
202 - getimg(img){  
203 - return service.getimg(img)  
204 - },  
205 - jump(e) {  
206 - var that = this  
207 - if (that.btnkg == 1) {  
208 - return  
209 - } else {  
210 - that.btnkg = 1  
211 - setTimeout(function() {  
212 - that.btnkg = 0  
213 - }, 2000)  
214 - }  
215 - console.log(e.currentTarget.dataset.type)  
216 - service.jump(e)  
217 - },  
218 - goback(){  
219 - uni.navigateBack()  
220 - },  
221 - func(){  
222 - // that.$store.commit('setSystem',datas.system)  
223 - },  
224 - }  
225 - }  
226 -</script>  
227 -  
228 -<style lang="scss" scoped>  
229 -.wrap_box{  
230 - width: 100%;  
231 - // padding: 30rpx;  
232 - position: relative;  
233 - background: #F8F8F8;  
234 - min-height: 100vh;  
235 -}  
236 -.tel_index_bg{  
237 - position: absolute;  
238 - top: 0;  
239 - z-index: 1;  
240 - width: 100%;  
241 - min-height: 220rpx;  
242 - background: linear-gradient(0deg, #f8f8f8 0%, #ffffff 25%, #5D9DFD 60%, #428EFE 70%, #2D81FF 100%);  
243 -}  
244 -.tch_box{  
245 - width: 100%;  
246 - position: relative;  
247 -}  
248 -.tch_main{  
249 - width: 100%;  
250 - position: relative;  
251 - z-index: 2;  
252 - padding: 28rpx;  
253 -}  
254 -.tch_user{  
255 - width: 100%;  
256 - min-height: 176rpx;  
257 - background: #FFFFFF;  
258 - border-radius: 20rpx;  
259 - padding: 28rpx;  
260 - .user_tx{  
261 - width: 112rpx;  
262 - height: 112rpx;  
263 - border-radius: 50%;  
264 - overflow: hidden;  
265 - margin-right: 23rpx;  
266 - }  
267 - .icon{  
268 - font-size: 24rpx;  
269 - color: #bbb;  
270 - }  
271 - .user_name{  
272 - font-size: 32rpx;  
273 - color: #545D71;  
274 - margin-bottom: 10rpx;  
275 - font-weight: bold;  
276 - text{  
277 - font-size: 24rpx;  
278 - color: #4086ee;  
279 - padding: 0 9rpx;  
280 - height: 34rpx;  
281 - background: rgba(64, 134, 238, .1);  
282 - border-radius: 4rpx;  
283 - margin-left: 10rpx;  
284 - font-weight: normal;  
285 - }  
286 - }  
287 - .user_id{  
288 - font-size: 28rpx;  
289 - color: #7C8086;  
290 - }  
291 -}  
292 -.tit_box{  
293 - font-size: 32rpx;  
294 - font-weight: bold;  
295 - color: #545D71;  
296 - height: 80rpx;  
297 - margin-top: 14rpx;  
298 - display: flex;  
299 - align-items: center;  
300 -}  
301 -.tch_banji{  
302 - width: 100%;  
303 - min-height: 210rpx;  
304 - background: #FFFFFF;  
305 - border-radius: 20rpx;  
306 - padding: 28rpx;  
307 - display: flex;  
308 - align-items: center;  
309 - justify-content: space-between;  
310 - .bj_sg{  
311 - width: 1px;  
312 - height: 120rpx;  
313 - background: #EEEEEE;  
314 - border-radius: 1px;  
315 - }  
316 - .bjf{  
317 - width: 260rpx;  
318 - padding-right: 30rpx;  
319 - .bjf_num{  
320 - font-size: 60rpx;  
321 - font-family: Arial;  
322 - font-weight: bold;  
323 - color: #545D71;  
324 - line-height: 70rpx;  
325 - }  
326 - .bjf_text{  
327 - font-size: 30rpx;  
328 - font-family: PingFang SC;  
329 - font-weight: 400;  
330 - color: #545D71;  
331 - display: flex;  
332 - align-items: center;  
333 - padding-left: 35rpx;  
334 - .icon{  
335 - font-size: 18rpx;  
336 - color: #ddd;  
337 - margin-left: 20rpx;  
338 - }  
339 - }  
340 - }  
341 - .bj_xq{  
342 - width: 380rpx;  
343 - padding-left: 28rpx;  
344 - .bj_pai{  
345 - width: 100%;  
346 - display: flex;  
347 - align-items: center;  
348 - font-size: 28rpx;  
349 - color: #7C8086;  
350 - height: 60rpx;  
351 - .bj_pait{  
352 - width: 16rpx;  
353 - height: 16rpx;  
354 - background: #2D81FF;  
355 - border-radius: 50%;  
356 - margin-right: 10rpx;  
357 - }  
358 - .bj_paiw{  
359 - width: 16rpx;  
360 - height: 16rpx;  
361 - background: #FF9A18;  
362 - border-radius: 50%;  
363 - margin-right: 10rpx;  
364 - }  
365 - .bj_painum{  
366 - font-size: 28rpx;  
367 - color: #545D71;  
368 - }  
369 - .icon{  
370 - font-size: 18rpx;  
371 - color: #ddd;  
372 - margin-left: 10rpx;  
373 - }  
374 - }  
375 - }  
376 -}  
377 -.xygk{  
378 - width: 100%;  
379 - display: flex;  
380 - flex-wrap: wrap;  
381 - .gk_li{  
382 - width: 333rpx;  
383 - height: 132rpx;  
384 - background: #FFFFFF;  
385 - border-radius: 20rpx;  
386 - display: flex;  
387 - align-items: center;  
388 - padding: 28rpx;  
389 - padding-right: 10rpx;  
390 - font-size: 30rpx;  
391 - margin-right: 28rpx;  
392 - &:nth-child(2n){  
393 - margin-right: 0;  
394 - }  
395 - &:nth-child(n+3){  
396 - margin-top: 28rpx;  
397 - }  
398 - image{  
399 - width: 68rpx;  
400 - height: 76rpx;  
401 - margin-right: 15rpx;  
402 - position: relative;  
403 - top: 4rpx;  
404 - }  
405 - }  
406 -}  
407 -.rxmd_list{  
408 - width: 100%;  
409 - background: #FFFFFF;  
410 - border-radius: 10rpx;  
411 - .rxmd_li{  
412 - width: 100%;  
413 - height: 94rpx;  
414 - padding: 0 28rpx;  
415 - display: flex;  
416 - align-items: center;  
417 - color: #545D71;  
418 - &+.rxmd_li{  
419 - border-top: 1px solid #eee;  
420 - }  
421 - .rxmd_li_name{  
422 - // padding: 0 14rpx;  
423 - width: 160rpx;  
424 - font-size: 30rpx;  
425 - // padding-right: 10rpx;  
426 - text{  
427 - max-width: 120rpx;  
428 - font-size: 30rpx;  
429 - line-height: 34rpx;  
430 - height: 34rpx;  
431 - }  
432 - image{  
433 - width: 28rpx;  
434 - height: 28rpx;  
435 - margin-left: 12rpx;  
436 - flex: none;  
437 - }  
438 - }  
439 - .rxmd_li_id{  
440 - font-size: 30rpx;  
441 - letter-spacing: 0;  
442 - // padding: 0 14rpx;  
443 - padding-left: 10rpx;  
444 - }  
445 - .rxmd_li_time{  
446 - font-size: 28rpx;  
447 - letter-spacing: 0;  
448 - }  
449 - }  
450 -}  
451 -</style>  
1 <template> 1 <template>
2 <view class="container"> 2 <view class="container">
3 - <CustomReturn title="听课教室选座" color="#323232" :bgColor="bgColor" :isShowBreak="false"> 3 + <CustomReturn title="首页" color="#323232" :bgColor="bgColor" :isShowBreak="false">
4 <template v-slot:left> 4 <template v-slot:left>
5 - <view class="set-up"> 5 + <view class="set-up" @click="$service.jump" data-url="/pagesB/newSetting/newSetting">
6 <image src="/static/imagesV2/tch_index/icon9.png" mode="aspectFill"></image> 6 <image src="/static/imagesV2/tch_index/icon9.png" mode="aspectFill"></image>
7 </view> 7 </view>
8 </template> 8 </template>
1 <template> 1 <template>
2 <view class="wrap_box"> 2 <view class="wrap_box">
3 - <!-- <uParse v-if="datas" :content="datas"></uParse> -->  
4 - <!-- stu_bz_index -->  
5 - <view class="tel_index_bg"></view>  
6 - <view class="bz_box">  
7 - <view class="edit_box">  
8 - <view v-if="options.id" class="edit_tit">  
9 - <text class="edit_type"></text>  
10 - <view class="flex_1">  
11 - <!-- 2022/02/16 16:23:32 --> 3 + <view class="bz-box">
  4 + <view class="edit-box">
  5 + <view class="edit-tit" v-if="options.id" >
  6 + <text class="edit-tit_icon"></text>
  7 + <view class="edit-tit_content">
12 {{time}} 8 {{time}}
13 </view> 9 </view>
14 </view> 10 </view>
15 - <picker v-else @change="bindPickerChange" :value="index" :range="tabs" range-key="title">  
16 - <view class="edit_tit">  
17 - <view class="edit_l"> 11 + <picker @change="bindPickerChange" :value="index" :range="tabs" range-key="title" v-else>
  12 + <view class="cell">
  13 + <view class="cell-label">
18 选择分类 14 选择分类
19 </view> 15 </view>
20 - <view class="edit_r">  
21 - {{tabs[index].title}}<text class="icon icon-xiala"></text> 16 + <view class="cell-content">
  17 + {{tabs[index].title}}
  18 + <view class="icon">
  19 + <u-icon size="24rpx" name="arrow-down"/>
  20 + </view>
22 </view> 21 </view>
23 </view> 22 </view>
24 </picker> 23 </picker>
25 - <view class="edit_bz">  
26 - 备注内容 24 + <view class="cell ">
  25 + <view class="remarks">
  26 + <textarea v-model="content" placeholder="请输入备注的内容" placeholder-class="textarea-placeholder" ></textarea>
  27 + </view>
27 </view> 28 </view>
28 - <textarea class="edit_content" placeholder="请输入备注的内容" v-model="content"></textarea>  
29 </view> 29 </view>
30 30
31 - <view class="bz_add" > 31 + <view class="bz-btn" >
32 <view class="" @click="save_fuc" data-url="/pagesA/stu_bz_edit/stu_bz_edit"> 32 <view class="" @click="save_fuc" data-url="/pagesA/stu_bz_edit/stu_bz_edit">
33 保存 33 保存
34 </view> 34 </view>
35 </view> 35 </view>
36 </view> 36 </view>
37 - <!-- 阻止滑动 -->  
38 - <!-- <view @touchmove.stop.prevent='test'></view> -->  
39 </view> 37 </view>
40 </template> 38 </template>
41 39
@@ -262,80 +260,86 @@ @@ -262,80 +260,86 @@
262 background: #F8F8F8; 260 background: #F8F8F8;
263 position: relative; 261 position: relative;
264 } 262 }
265 -.tel_index_bg{  
266 - position: absolute;  
267 - top: 0;  
268 - z-index: 1;  
269 - width: 100%;  
270 - min-height: 220rpx;  
271 - background: linear-gradient(0deg, #f8f8f8 0%, #5D9DFD 60%, #428EFE 70%, #2D81FF 100%);  
272 -}  
273 -.bz_box{  
274 - width: 100%;  
275 - position: relative;  
276 - z-index: 2; 263 +.bz-box {
277 padding: 30rpx; 264 padding: 30rpx;
278 -}  
279 -.edit_box{  
280 - width: 100%;  
281 - height: 456rpx;  
282 - background: #FFFFFF;  
283 - border-radius: 10rpx;  
284 - margin-bottom: 50rpx;  
285 - padding: 0 30rpx;  
286 - .edit_tit{  
287 - width: 100%;  
288 - height: 100rpx;  
289 - border-bottom: 1px solid #eee;  
290 - display: flex;  
291 - align-items: center;  
292 - justify-content: space-between;  
293 - font-size: 28rpx;  
294 - color: #A9B1C0;  
295 - .edit_type{  
296 - width: 14rpx;  
297 - height: 14rpx;  
298 - background: #2D81FF;  
299 - border-radius: 50%;  
300 - margin-right: 10rpx; 265 +
  266 + .edit-box {
  267 + padding: 0 30rpx;
  268 + border-radius: 20rpx;
  269 + background-color: #fff;
  270 + .edit-tit {
  271 + font-size: 30rpx;
  272 + font-family: PingFang SC;
  273 + font-weight: 500;
  274 + display: flex;
  275 + align-items: center;
  276 + padding: 20rpx 0;
  277 + &_icon {
  278 + width: 14rpx;
  279 + height: 14rpx;
  280 + background: #2D81FF;
  281 + border-radius: 50%;
  282 + margin-right: 20rpx;
  283 + }
  284 + &_content {
  285 + flex: 1;
  286 + }
301 } 287 }
302 - .edit_l{  
303 - font-size: 32rpx;  
304 - color: #545D71; 288 + .cell {
  289 + display: flex;
  290 + align-items: center;
  291 + padding: 20rpx 0;
  292 + .cell-label {
  293 + width: 150rpx;
  294 + font-size: 30rpx;
  295 + font-family: PingFang SC;
  296 + font-weight: 500;
  297 + }
  298 + .cell-content {
  299 + flex: 1;
  300 + display: flex;
  301 + align-items: center;
  302 + justify-content: flex-end;
  303 + font-size: 28rpx;
  304 + font-family: PingFang SC;
  305 + font-weight: 400;
  306 + .icon {
  307 + margin-left: 10rpx;
  308 + }
  309 + }
305 } 310 }
306 - .edit_r{  
307 - font-size: 30rpx;  
308 - color: #545D71;  
309 - .icon{  
310 - font-size: 20rpx;  
311 - color: rgba(153, 153, 153, .5); 311 + .remarks {
  312 + width: 100%;
  313 + height: 350rpx;
  314 + font-size: 28rpx;
  315 +
  316 + textarea {
  317 + width: 100%;
  318 + height: 100%;
  319 + background: #F5F6F8;
  320 + padding: 20rpx;
  321 + box-sizing: border-box;
  322 + font-size: 26rpx;
  323 + }
  324 + :deep(.textarea-placeholder) {
  325 + color: #979797;
312 } 326 }
313 } 327 }
314 } 328 }
315 - .edit_bz{  
316 - margin-top: 25rpx;  
317 - font-size: 32rpx;  
318 - color: #545D71;  
319 - }  
320 - .edit_content{  
321 - width: 100%;  
322 - padding: 10rpx 0;  
323 - height: 230rpx;  
324 - font-size: 32rpx;  
325 - }  
326 } 329 }
327 -.bz_add{  
328 - width: 100%;  
329 - view{  
330 - font-size: 32rpx;  
331 - color: #FFFFFF;  
332 - width: 100%;  
333 - height: 90rpx; 330 +
  331 +.bz-btn {
  332 + margin: 30rpx;
  333 + view {
  334 + height: 88rpx;
  335 + line-height: 88rpx;
334 background: #2D81FF; 336 background: #2D81FF;
335 - border-radius: 10rpx;  
336 - display: flex;  
337 - align-items: center;  
338 - justify-content: center; 337 + border-radius: 44rpx;
  338 + font-size: 34rpx;
  339 + font-family: PingFang SC;
  340 + font-weight: 500;
  341 + color: #FFFFFF;
  342 + text-align: center;
339 } 343 }
340 } 344 }
341 </style> 345 </style>
1 <template> 1 <template>
2 <view class="wrap_box"> 2 <view class="wrap_box">
3 - <!-- <uParse v-if="datas" :content="datas"></uParse> -->  
4 - <!-- stu_bz_index -->  
5 - <view class="tel_index_bg"></view>  
6 <view class="bz_box"> 3 <view class="bz_box">
7 <view class="bz_tab"> 4 <view class="bz_tab">
8 - <view v-for="(item,index) in tabs" class="tab_li" :class="{active:active==item.id}" @click="setac_fuc(item.id)"> 5 + <view v-for="(item,index) in tabs" :key="index" class="tab_li" :class="{active:active==item.id}" @click="setac_fuc(item.id)">
9 {{item.title}} 6 {{item.title}}
10 </view> 7 </view>
11 </view> 8 </view>
12 - <view class="bz_list">  
13 - <view class="bz_li" v-for="(item,index) in datas">  
14 - <view class="li_msg">  
15 - <view class="li_time">  
16 - <text></text>{{item.create_time}}  
17 - </view>  
18 - <view class="li_inr">  
19 - {{item.content}}  
20 - </view> 9 + <view class="list">
  10 + <view class="item" v-for="(item,index) in datas" :key="index">
  11 + <view class="item-remarks">
  12 + {{item.content}}
21 </view> 13 </view>
22 - <view class="li_b">  
23 - <view class="li_btn" @click="del_fuc(item)">  
24 - 删除 14 + <view class="item-footer">
  15 + <view class="time">
  16 + {{item.create_time}}
25 </view> 17 </view>
26 - <view class="li_btn" @click="$service.jump" :data-url="'/pagesA/stu_bz_edit/stu_bz_edit?id='+item.id+'&time='+item.create_time+'&content='+item.content"> 18 +
  19 + <view
  20 + class="btn"
  21 + @click="$service.jump"
  22 + :data-url="'/pagesA/stu_bz_edit/stu_bz_edit?id='+item.id+'&time='+item.create_time+'&content='+item.content">
  23 + <view class="icon">
  24 + <image src="/static/imagesV2/tch_index/icon11.png" mode=""></image>
  25 + </view>
27 修改 26 修改
28 </view> 27 </view>
  28 + <view class="btn" @click="showDelModal(item)">
  29 + <view class="icon">
  30 + <image src="/static/imagesV2/tch_index/icon12.png" mode=""></image>
  31 + </view>
  32 + 删除
  33 + </view>
29 </view> 34 </view>
30 </view> 35 </view>
31 <view class="bz_li" v-if="datas.length==0"> 36 <view class="bz_li" v-if="datas.length==0">
32 <u-empty 37 <u-empty
33 - mode="data"  
34 - text="暂无记录"  
35 - icon="/static/images/tch/img_blank.png" 38 + mode="data"
  39 + text="暂无记录"
  40 + icon="/static/images/tch/img_blank.png"
36 > 41 >
37 </u-empty> 42 </u-empty>
38 </view> 43 </view>
@@ -42,9 +47,19 @@ @@ -42,9 +47,19 @@
42 添加 47 添加
43 </view> 48 </view>
44 </view> 49 </view>
  50 +
  51 + <u-modal
  52 + :show="show"
  53 + title="提示"
  54 + content="是否删除该备注?"
  55 + @confirm="del_fuc(current)"
  56 + @cancel="show = false"
  57 + :asyncClose="true"
  58 + :showCancelButton="true"
  59 + >
  60 + </u-modal>
  61 +
45 </view> 62 </view>
46 - <!-- 阻止滑动 -->  
47 - <!-- <view @touchmove.stop.prevent='test'></view> -->  
48 </view> 63 </view>
49 </template> 64 </template>
50 65
@@ -76,7 +91,9 @@ @@ -76,7 +91,9 @@
76 id:3 91 id:3
77 }, 92 },
78 ], 93 ],
79 - active:1 94 + active:1,
  95 + show: false,
  96 + current: null
80 } 97 }
81 }, 98 },
82 computed: { 99 computed: {
@@ -102,66 +119,60 @@ @@ -102,66 +119,60 @@
102 that.active=index 119 that.active=index
103 that.onRetry() 120 that.onRetry()
104 }, 121 },
  122 + showDelModal(item) {
  123 + this.show = true;
  124 + this.current = item;
  125 + },
105 del_fuc(item){ 126 del_fuc(item){
106 - uni.showModal({  
107 - title: '提示',  
108 - content: '是否删除该备注',  
109 - success: function (res) {  
110 - if (res.confirm) {  
111 - console.log('用户点击确定');  
112 - var datas={  
113 - id: item.id  
114 - }  
115 - var jkurl='/teacher/remark_del'  
116 - that.$service.P_post(jkurl, datas).then(res => {  
117 - that.btnkg = 0  
118 - console.log(res)  
119 - if (res.code == 1) {  
120 - that.htmlReset = 0  
121 - var datas = res.data  
122 - console.log(typeof datas)  
123 -  
124 - if (typeof datas == 'string') {  
125 - datas = JSON.parse(datas)  
126 - }  
127 - console.log(res)  
128 - uni.showToast({  
129 - icon:'none',  
130 - title:'删除成功'  
131 - })  
132 - setTimeout(function(){  
133 - that.onRetry()  
134 - },1000)  
135 - } else {  
136 -  
137 - if (res.msg) {  
138 - uni.showToast({  
139 - icon: 'none',  
140 - title: res.msg  
141 - })  
142 - } else {  
143 - uni.showToast({  
144 - icon: 'none',  
145 - title: '获取数据失败'  
146 - })  
147 - }  
148 - }  
149 - }).catch(e => {  
150 - that.htmlReset = 1  
151 - that.btnkg = 0  
152 - // that.$refs.htmlLoading.htmlReset_fuc(1)  
153 - console.log(e)  
154 - uni.showToast({  
155 - icon: 'none',  
156 - title: '获取数据失败,请检查您的网络连接'  
157 - }) 127 + var datas={
  128 + id: item.id
  129 + }
  130 + var jkurl='/teacher/remark_del'
  131 + that.$service.P_post(jkurl, datas).then(res => {
  132 + this.show = false;
  133 + that.btnkg = 0
  134 + console.log(res)
  135 + if (res.code == 1) {
  136 + that.htmlReset = 0
  137 + var datas = res.data
  138 + console.log(typeof datas)
  139 +
  140 + if (typeof datas == 'string') {
  141 + datas = JSON.parse(datas)
  142 + }
  143 + console.log(res)
  144 + uni.showToast({
  145 + icon:'none',
  146 + title:'删除成功'
  147 + })
  148 + setTimeout(function(){
  149 + that.onRetry()
  150 + },1000)
  151 + } else {
  152 +
  153 + if (res.msg) {
  154 + uni.showToast({
  155 + icon: 'none',
  156 + title: res.msg
  157 + })
  158 + } else {
  159 + uni.showToast({
  160 + icon: 'none',
  161 + title: '获取数据失败'
158 }) 162 })
159 -  
160 - } else if (res.cancel) {  
161 - console.log('用户点击取消');  
162 } 163 }
163 } 164 }
164 - }); 165 + }).catch(e => {
  166 + this.show = false;
  167 + that.htmlReset = 1
  168 + that.btnkg = 0
  169 + // that.$refs.htmlLoading.htmlReset_fuc(1)
  170 + console.log(e)
  171 + uni.showToast({
  172 + icon: 'none',
  173 + title: '获取数据失败,请检查您的网络连接'
  174 + })
  175 + })
165 }, 176 },
166 onRetry(){ 177 onRetry(){
167 that.page=1 178 that.page=1
@@ -270,95 +281,81 @@ @@ -270,95 +281,81 @@
270 // #endif 281 // #endif
271 background: #F8F8F8; 282 background: #F8F8F8;
272 position: relative; 283 position: relative;
  284 + padding-bottom: 130rpx;
273 } 285 }
274 -.tel_index_bg{  
275 - position: absolute;  
276 - top: 0;  
277 - z-index: 1;  
278 - width: 100%;  
279 - min-height: 220rpx;  
280 - background: linear-gradient(0deg, #f8f8f8 0%, #5D9DFD 60%, #428EFE 70%, #2D81FF 100%);  
281 -} 286 +
282 .bz_box{ 287 .bz_box{
283 width: 100%; 288 width: 100%;
284 position: relative; 289 position: relative;
285 - z-index: 2;  
286 - padding: 0 30rpx 30rpx;  
287 } 290 }
288 .bz_tab{ 291 .bz_tab{
289 width: 100%; 292 width: 100%;
290 - height: 90rpx;  
291 display: flex; 293 display: flex;
292 align-items: center; 294 align-items: center;
293 justify-content: space-around; 295 justify-content: space-around;
  296 + background-color: #fff;
  297 + border-top:1rpx solid #f3f4f6;
294 } 298 }
295 .tab_li{ 299 .tab_li{
296 - color: rgba(255, 255, 255, .6);  
297 - font-size: 32rpx; 300 + font-size: 28rpx;
  301 + font-family: PingFang SC;
  302 + font-weight: 500;
  303 + color: #323232;
  304 + padding:30rpx;
298 position: relative; 305 position: relative;
299 - padding: 10rpx 0rpx;  
300 &.active{ 306 &.active{
301 - color: #fff; 307 + color: #2D81FF;
302 &:after{ 308 &:after{
303 - content:''; 309 + content: '';
304 position: absolute; 310 position: absolute;
305 - bottom: 0; 311 + bottom: 8rpx;
306 left: 50%; 312 left: 50%;
307 - margin-left: -19rpx;  
308 - width: 38rpx;  
309 - height: 5rpx;  
310 - background: #FFFFFF;  
311 - border-radius: 3rpx; 313 + background-image: url(@/static/imagesV2/icon23.png);
  314 + background-size: 100% 100%;
  315 + transform: translateX(-50%);
  316 + height: 24rpx;
  317 + width: 24rpx;
312 } 318 }
313 } 319 }
314 } 320 }
315 -.bz_list{  
316 - width: 100%;  
317 - padding-top: 10rpx;  
318 - padding-bottom: 130rpx;  
319 - .bz_li{  
320 - width: 100%;  
321 - // height: 285rpx;  
322 - background: #FFFFFF;  
323 - border-radius: 10rpx;  
324 - &+.bz_li{ 321 +.list{
  322 + margin: 20rpx;
  323 + .item {
  324 + background-color: #fff;
  325 + border-radius: 20rpx;
  326 + padding: 30rpx;
  327 + & + .item {
325 margin-top: 20rpx; 328 margin-top: 20rpx;
326 } 329 }
327 - .li_msg{  
328 - width: 100%;  
329 - padding: 30rpx;  
330 - .li_time{  
331 - font-size: 28rpx;  
332 - color: #A9B1C0;  
333 - display: flex;  
334 - align-items: center;  
335 - text{  
336 - width: 14rpx;  
337 - height: 14rpx;  
338 - background: #2D81FF;  
339 - border-radius: 50%;  
340 - margin-right: 10rpx;  
341 - }  
342 - }  
343 - .li_inr{  
344 - padding-top: 15rpx;  
345 - font-size: 30rpx;  
346 - color: #545D71;  
347 - line-height: 48rpx;  
348 - } 330 + &-remarks {
  331 + font-size: 26rpx;
  332 + font-family: PingFang SC;
  333 + font-weight: 500;
  334 + color: #323232;
349 } 335 }
350 - .li_b{  
351 - width: 100%;  
352 - height: 90rpx;  
353 - padding: 0 30rpx;  
354 - border-top: 1px solid #eee; 336 + &-footer {
355 display: flex; 337 display: flex;
356 align-items: center; 338 align-items: center;
357 - flex-direction: row-reverse;  
358 - .li_btn{  
359 - font-size: 28rpx;  
360 - color: #A9B1C0; 339 + margin-top: 30rpx;
  340 + .time {
  341 + flex: 1;
  342 + font-size: 24rpx;
  343 + font-family: PingFang SC;
  344 + font-weight: 400;
  345 + }
  346 + .btn {
  347 + display: flex;
  348 + align-items: center;
  349 + font-size: 26rpx;
  350 + font-family: PingFang SC;
  351 + font-weight: 500;
  352 + color: #646464;
361 margin-left: 30rpx; 353 margin-left: 30rpx;
  354 + .icon {
  355 + margin-right: 10rpx;
  356 + width: 30rpx;
  357 + height: 30rpx;
  358 + }
362 } 359 }
363 } 360 }
364 } 361 }
@@ -367,20 +364,20 @@ @@ -367,20 +364,20 @@
367 width: 100%; 364 width: 100%;
368 position: fixed; 365 position: fixed;
369 bottom: 0; 366 bottom: 0;
370 - background: #f8f8f8; 367 + background: #fff;
371 z-index: 800; 368 z-index: 800;
372 left: 0; 369 left: 0;
373 - padding: 0 30rpx 30rpx;  
374 - view{  
375 - font-size: 32rpx;  
376 - color: #FFFFFF;  
377 - width: 100%;  
378 - height: 90rpx; 370 + padding: 16rpx 26rpx;
  371 + view {
379 background: #2D81FF; 372 background: #2D81FF;
380 - border-radius: 10rpx;  
381 - display: flex;  
382 - align-items: center;  
383 - justify-content: center; 373 + border-radius: 44rpx;
  374 + font-size: 34rpx;
  375 + font-family: PingFang SC;
  376 + font-weight: 500;
  377 + color: #FFFFFF;
  378 + height: 88rpx;
  379 + line-height: 88rpx;
  380 + text-align: center;
384 } 381 }
385 } 382 }
386 </style> 383 </style>
1 <template> 1 <template>
2 <view class="wrap_box"> 2 <view class="wrap_box">
3 - <!-- <uParse v-if="datas" :content="datas"></uParse> -->  
4 - <!-- stu_bz_index -->  
5 - <view class="tel_index_bg"></view>  
6 - <view class="bz_box">  
7 - <!-- <view class="stu_num">  
8 - <picker mode="date" :value="date" :start="startDate" :end="endDate" @change="bindDateChange">  
9 - <view class="">  
10 - 核对时间:{{sx_time}}<text class="icon icon-arrow-right-copy-copy"></text> 3 + <u-sticky>
  4 + <view class="bz_box">
  5 + <view class="bz_tab">
  6 + <view v-for="(item,index) in tabs" class="tab_li" :class="{active:active==index}" @click="setac_fuc(index)">
  7 + {{item.title}}
11 </view> 8 </view>
12 - </picker>  
13 - <picker @change="bindPickerChange" :value="index" :range="tabs" range-key="title">  
14 - <view class="">  
15 - {{tabs[index].title}}  
16 - <text class="icon icon-arrow-right-copy-copy"></text>  
17 - </view>  
18 - </picker>  
19 - </view> -->  
20 - <view class="bz_tab">  
21 - <view v-for="(item,index) in tabs" class="tab_li" :class="{active:active==index}" @click="setac_fuc(index)">  
22 - {{item.title}}  
23 </view> 9 </view>
24 </view> 10 </view>
25 - <ftadd v-if="active==0" :options="options"></ftadd>  
26 - <ftadd1 v-else :options="options"></ftadd1>  
27 - <!-- <view class="stu_list">  
28 -  
29 - </view> -->  
30 - </view>  
31 - <!-- <view class="bz_add" >  
32 - <view class="" @click="$service.jump" :data-url="'/pagesA/stu_ft_add/stu_ft_add?type='+active">  
33 - 添加  
34 - </view>  
35 - </view> -->  
36 - <!-- 阻止滑动 -->  
37 - <!-- <view @touchmove.stop.prevent='test'></view> --> 11 + </u-sticky>
  12 +
  13 + <ftadd v-if="active==0" :options="options"></ftadd>
  14 + <ftadd1 v-else :options="options"></ftadd1>
  15 +
38 </view> 16 </view>
39 </template> 17 </template>
40 18
@@ -267,77 +245,42 @@ @@ -267,77 +245,42 @@
267 245
268 padding-bottom: 10rpx; 246 padding-bottom: 10rpx;
269 } 247 }
270 -  
271 - .tel_index_bg {  
272 - position: absolute;  
273 - top: 0;  
274 - z-index: 1;  
275 - width: 100%;  
276 - min-height: 220rpx;  
277 - background: linear-gradient(0deg, #f8f8f8 0%, #5D9DFD 60%, #428EFE 70%, #2D81FF 100%);  
278 - }  
279 -  
280 - .bz_box {  
281 - width: 100%;  
282 - position: relative;  
283 - z-index: 2;  
284 - padding:0 30rpx 30rpx;  
285 -  
286 - .stu_num {  
287 - width: 100%;  
288 - height: 80rpx;  
289 - display: flex;  
290 - align-items: center;  
291 - font-size: 28rpx;  
292 - color: #fff;  
293 - justify-content: space-between;  
294 - .icon{  
295 - font-size: 24rpx;  
296 - margin-left: 10rpx;  
297 - }  
298 - }  
299 - }  
300 -  
301 248
302 -  
303 - .save_btn {  
304 - display: flex;  
305 - align-items: center;  
306 - justify-content: center;  
307 - font-size: 32rpx;  
308 - color: #FFFFFF; 249 + .bz_box{
309 width: 100%; 250 width: 100%;
310 - height: 90rpx;  
311 - background: #2D81FF;  
312 - border-radius: 10rpx;  
313 - margin-top: 40rpx; 251 + position: relative;
  252 + background: #F8F8F8;
314 } 253 }
315 .bz_tab{ 254 .bz_tab{
316 width: 100%; 255 width: 100%;
317 - height: 90rpx;  
318 display: flex; 256 display: flex;
319 align-items: center; 257 align-items: center;
320 justify-content: space-around; 258 justify-content: space-around;
  259 + background-color: #fff;
  260 + border-top:1rpx solid #f3f4f6;
321 } 261 }
322 .tab_li{ 262 .tab_li{
323 - color: rgba(255, 255, 255, .6);  
324 - font-size: 32rpx; 263 + font-size: 28rpx;
  264 + font-family: PingFang SC;
  265 + font-weight: 500;
  266 + color: #323232;
  267 + padding:30rpx;
325 position: relative; 268 position: relative;
326 - padding: 10rpx 0rpx;  
327 &.active{ 269 &.active{
328 - color: #fff; 270 + color: #2D81FF;
329 &:after{ 271 &:after{
330 - content:''; 272 + content: '';
331 position: absolute; 273 position: absolute;
332 - bottom: 0; 274 + bottom: 8rpx;
333 left: 50%; 275 left: 50%;
334 - margin-left: -19rpx;  
335 - width: 38rpx;  
336 - height: 5rpx;  
337 - background: #FFFFFF;  
338 - border-radius: 3rpx; 276 + background-image: url(@/static/imagesV2/icon23.png);
  277 + background-size: 100% 100%;
  278 + transform: translateX(-50%);
  279 + height: 24rpx;
  280 + width: 24rpx;
339 } 281 }
340 } 282 }
341 } 283 }
342 284
  285 +
343 </style> 286 </style>
1 <template> 1 <template>
2 <view class="wrap_box"> 2 <view class="wrap_box">
3 - <!-- <uParse v-if="datas" :content="datas"></uParse> -->  
4 - <!-- stu_bz_index -->  
5 - <view class="tel_index_bg"></view>  
6 - <view class="bz_box">  
7 - <!-- <view class="stu_num">  
8 - <picker mode="date" :value="date" :start="startDate" :end="endDate" @change="bindDateChange">  
9 - <view class="">  
10 - 核对时间:{{sx_time}}<text class="icon icon-arrow-right-copy-copy"></text> 3 + <u-sticky>
  4 + <view class="bz_box">
  5 + <view class="bz_tab">
  6 + <view v-for="(item,index) in tabs" :key="index" class="tab_li" :class="{active:active==index}" @click="setac_fuc(index)">
  7 + {{item.title}}
11 </view> 8 </view>
12 - </picker>  
13 - <picker @change="bindPickerChange" :value="index" :range="tabs" range-key="title">  
14 - <view class="">  
15 - {{tabs[index].title}}  
16 - <text class="icon icon-arrow-right-copy-copy"></text>  
17 - </view>  
18 - </picker>  
19 - </view> -->  
20 - <view class="bz_tab">  
21 - <view v-for="(item,index) in tabs" class="tab_li" :class="{active:active==index}" @click="setac_fuc(index)">  
22 - {{item.title}}  
23 </view> 9 </view>
24 - </view>  
25 - <view class="stu_list">  
26 - <view class="search_box dis_flex aic"> 10 + <view class="search_box">
  11 + <u-icon name="search" color="#979797" size="28" @click="onRetry"></u-icon>
27 <u-input 12 <u-input
28 - placeholder="请输入搜索内容"  
29 - v-model="name_s"  
30 - suffixIconStyle="color: #909399"  
31 - @confirm="onRetry" 13 + class="search_box-input"
  14 + placeholder="请输入搜索内容"
  15 + v-model="name_s"
  16 + suffixIconStyle="color: #909399"
  17 + placeholder-style="color: #C3C3C3"
  18 + @confirm="onRetry"
32 ></u-input> 19 ></u-input>
33 - <u-icon name="search" color="#909399" size="28" @click="onRetry"></u-icon> 20 +
34 </view> 21 </view>
35 - <view class="stu_li" v-for="(item,index) in datas" @click="jump_fuc(item)">  
36 - <view class="stu_li_name">  
37 - {{item.name}}  
38 - <!-- <image v-if="index%2==0" src="/static/images/tch/icon_female.png" mode="aspectFit"></image>  
39 - <image v-else src="/static/images/tch/icon_male.png" mode="aspectFit"></image> -->  
40 - </view>  
41 - <view class="flex_1"></view>  
42 - <view class="sf_v">  
43 - {{item.add_time}}<text class="icon icon-arrow-right-copy"></text>  
44 - </view> 22 + </view>
  23 + </u-sticky>
  24 +
  25 + <view class="list">
  26 + <view class="item" v-for="(item,index) in datas" :key="index" @click="jump_fuc(item)">
  27 + <view class="name">
  28 + {{item.name}}
  29 + </view>
  30 + <view class="tirm">
  31 + {{item.add_time}}
45 </view> 32 </view>
46 - <u-empty v-if="datas.length==0"  
47 - mode="data"  
48 - text="暂无记录"  
49 - icon="/static/images/tch/img_blank.png"  
50 - >  
51 - </u-empty> 33 + <text class="icon icon-arrow-right-copy"></text>
52 </view> 34 </view>
53 </view> 35 </view>
54 <view class="bz_add" > 36 <view class="bz_add" >
@@ -56,8 +38,6 @@ @@ -56,8 +38,6 @@
56 添加 38 添加
57 </view> 39 </view>
58 </view> 40 </view>
59 - <!-- 阻止滑动 -->  
60 - <!-- <view @touchmove.stop.prevent='test'></view> -->  
61 </view> 41 </view>
62 </template> 42 </template>
63 43
@@ -289,160 +269,104 @@ @@ -289,160 +269,104 @@
289 padding-bottom: 150rpx; 269 padding-bottom: 150rpx;
290 } 270 }
291 271
292 - .tel_index_bg {  
293 - position: absolute;  
294 - top: 0;  
295 - z-index: 1;  
296 - width: 100%;  
297 - min-height: 220rpx;  
298 - background: linear-gradient(0deg, #f8f8f8 0%, #5D9DFD 60%, #428EFE 70%, #2D81FF 100%);  
299 - }  
300 -  
301 - .bz_box { 272 + .bz_box{
302 width: 100%; 273 width: 100%;
303 position: relative; 274 position: relative;
304 - z-index: 2;  
305 - padding:0 30rpx 30rpx;  
306 -  
307 - .stu_num {  
308 - width: 100%;  
309 - height: 80rpx;  
310 - display: flex;  
311 - align-items: center;  
312 - font-size: 28rpx;  
313 - color: #fff;  
314 - justify-content: space-between;  
315 - .icon{  
316 - font-size: 24rpx;  
317 - margin-left: 10rpx;  
318 - }  
319 - }  
320 - }  
321 -  
322 - .stu_list {  
323 - width: 100%;  
324 - min-height: 100rpx;  
325 - background: #FFFFFF;  
326 - border-radius: 10rpx;  
327 - .stu_li {  
328 - width: 100%;  
329 - height: 100rpx;  
330 - display: flex;  
331 - align-items: center;  
332 - padding: 0 30rpx;  
333 -  
334 - &+.stu_li {  
335 - border-top: 1px solid #eee;  
336 - }  
337 -  
338 - .stu_li_name {  
339 - font-size: 30rpx;  
340 - color: #545D71;  
341 - margin-bottom: 10rpx;  
342 -  
343 - image {  
344 - width: 28rpx;  
345 - height: 28rpx;  
346 - margin-left: 5rpx;  
347 - }  
348 - }  
349 -  
350 - .sf_v {  
351 - font-size: 30rpx;  
352 - color: #A9B1C0;  
353 - display: flex;  
354 - align-items: center;  
355 -  
356 - .sf_v_btn {  
357 - display: flex;  
358 - align-items: center;  
359 - margin-left: 20rpx;  
360 - font-size: 30rpx;  
361 - color: #A9B1C0;  
362 -  
363 - .sf_v_btn_b {  
364 - display: flex;  
365 - align-items: center;  
366 - justify-content: center;  
367 - font-size: 18rpx;  
368 - color: #fff;  
369 - width: 32rpx;  
370 - height: 32rpx;  
371 - border: 1px solid #DDDDDD;  
372 - border-radius: 50%;  
373 - margin-left: 8rpx;  
374 -  
375 - &.active {  
376 - background: #2D81FF;  
377 - border: 1px solid #2D81FF;  
378 - }  
379 - }  
380 - }  
381 - }  
382 - }  
383 - }  
384 -  
385 - .save_btn {  
386 - display: flex;  
387 - align-items: center;  
388 - justify-content: center;  
389 - font-size: 32rpx;  
390 - color: #FFFFFF;  
391 - width: 100%;  
392 - height: 90rpx;  
393 - background: #2D81FF;  
394 - border-radius: 10rpx;  
395 - margin-top: 40rpx; 275 + background: #F8F8F8;
396 } 276 }
397 .bz_tab{ 277 .bz_tab{
398 width: 100%; 278 width: 100%;
399 - height: 90rpx;  
400 display: flex; 279 display: flex;
401 align-items: center; 280 align-items: center;
402 justify-content: space-around; 281 justify-content: space-around;
  282 + background-color: #fff;
  283 + border-top:1rpx solid #f3f4f6;
403 } 284 }
404 .tab_li{ 285 .tab_li{
405 - color: rgba(255, 255, 255, .6);  
406 - font-size: 32rpx; 286 + font-size: 28rpx;
  287 + font-family: PingFang SC;
  288 + font-weight: 500;
  289 + color: #323232;
  290 + padding:30rpx;
407 position: relative; 291 position: relative;
408 - padding: 10rpx 0rpx;  
409 &.active{ 292 &.active{
410 - color: #fff; 293 + color: #2D81FF;
411 &:after{ 294 &:after{
412 - content:''; 295 + content: '';
413 position: absolute; 296 position: absolute;
414 - bottom: 0; 297 + bottom: 8rpx;
415 left: 50%; 298 left: 50%;
416 - margin-left: -19rpx;  
417 - width: 38rpx;  
418 - height: 5rpx;  
419 - background: #FFFFFF;  
420 - border-radius: 3rpx; 299 + background-image: url(@/static/imagesV2/icon23.png);
  300 + background-size: 100% 100%;
  301 + transform: translateX(-50%);
  302 + height: 24rpx;
  303 + width: 24rpx;
421 } 304 }
422 } 305 }
423 } 306 }
424 - .bz_add{  
425 - width: 100%;  
426 - position: fixed;  
427 - bottom: 0;  
428 - background: #f8f8f8;  
429 - z-index: 800;  
430 - left: 0;  
431 - padding: 30rpx;  
432 - view{  
433 - font-size: 32rpx;  
434 - color: #FFFFFF;  
435 - width: 100%;  
436 - height: 90rpx;  
437 - background: #2D81FF;  
438 - border-radius: 10rpx; 307 +
  308 + .search_box {
  309 + background-color:#fff;
  310 + display: flex;
  311 + border-radius: 36rpx;
  312 + align-items: center;
  313 + padding: 0 20rpx 0 30rpx;
  314 + margin: 25rpx;
  315 + &-input {
  316 + flex-grow: 1;
  317 + }
  318 + }
  319 +
  320 + .list {
  321 + padding: 0 25rxp 25rpx;
  322 + .item {
439 display: flex; 323 display: flex;
440 align-items: center; 324 align-items: center;
441 - justify-content: center; 325 + background-color: #fff;
  326 + padding: 30rpx;
  327 + & + .item {
  328 + margin-top: 20rpx;
  329 + }
  330 + .name {
  331 + flex: 1;
  332 + font-size: 30rpx;
  333 + font-family: PingFang SC;
  334 + font-weight: bold;
  335 + color: #323232;
  336 + }
  337 +
  338 + .time {
  339 + font-size: 26rpx;
  340 + font-family: PingFang SC;
  341 + font-weight: 400;
  342 + color: #646464;
  343 + margin: 0 20rpx;
  344 + }
  345 + .icon {
  346 + color: #ACACAC;
  347 + font-size: 30rpx;
  348 + }
442 } 349 }
443 } 350 }
444 - .search_box{  
445 - border-bottom: 1px solid #ddd;  
446 - padding: 0 15rpx; 351 +
  352 + .bz_add {
  353 + position: fixed;
  354 + left: 0;
  355 + bottom: 0;
  356 + width: 100%;
  357 + padding: 16rpx 25rpx;
  358 + background-color: #fff;
  359 + view {
  360 + background: #2D81FF;
  361 + border-radius: 44rpx;
  362 + font-size: 34rpx;
  363 + font-family: PingFang SC;
  364 + font-weight: 500;
  365 + color: #FFFFFF;
  366 + height: 88rpx;
  367 + line-height: 88rpx;
  368 + text-align: center;
  369 + }
447 } 370 }
  371 +
448 </style> 372 </style>
1 <template> 1 <template>
2 <view class="wrap_box"> 2 <view class="wrap_box">
3 - <!-- <uParse v-if="datas" :content="datas"></uParse> -->  
4 - <!-- stu_bz_index -->  
5 - <view class="tel_index_bg"></view>  
6 - <view class="bz_box">  
7 - <ftadd :options="options"></ftadd>  
8 - </view> 3 +
  4 + <ftadd :options="options"></ftadd>
9 </view> 5 </view>
10 </template> 6 </template>
11 7
1 <template> 1 <template>
2 <view class="wrap_box"> 2 <view class="wrap_box">
3 - <!-- <uParse v-if="datas" :content="datas"></uParse> -->  
4 - <!-- stu_bz_index -->  
5 - <view class="tel_index_bg"></view>  
6 - <view class="bz_box">  
7 - <ftadd1 :options="options"></ftadd1>  
8 - </view> 3 + <ftadd1 :options="options"></ftadd1>
9 </view> 4 </view>
10 </template> 5 </template>
11 6
1 <template> 1 <template>
2 <view class="wrap_box"> 2 <view class="wrap_box">
3 - <!-- <uParse v-if="datas" :content="datas"></uParse> -->  
4 - <!-- stu_bz_index -->  
5 - <view class="tel_index_bg"></view>  
6 - <view class="bz_box">  
7 - <view class="stu_num">  
8 - <view class="">  
9 - 共{{datas.length}}人 3 + <u-sticky>
  4 + <view class="head">
  5 + <view class="stu-num">
  6 +
  7 + <text class="val">30</text>
  8 +
10 </view> 9 </view>
11 - <view class="" @click="$service.jump" data-url="/pagesA/stu_hddk_list/stu_hddk_list"> 10 + <view class="btn" @click="$service.jump" data-url="/pagesA/stu_hddk_list/stu_hddk_list">
12 查看历史记录 11 查看历史记录
13 </view> 12 </view>
14 </view> 13 </view>
15 - <view class="stu_list">  
16 - <view class="stu_li" v-for="(item,index) in datas">  
17 - <view class="stu_li_name"> 14 + </u-sticky>
  15 +
  16 + <view class="list">
  17 + <view class="item" v-for="(item,index) in datas" :key="index">
  18 + <view class="info">
  19 + <view class="name">
18 {{item.name}} 20 {{item.name}}
19 - <image v-if="item.sex!=1" src="/static/images/tch/icon_female.png" mode="aspectFit"></image>  
20 - <image v-else src="/static/images/tch/icon_male.png" mode="aspectFit"></image>  
21 </view> 21 </view>
22 - <view class="flex_1"></view>  
23 - <view class="sf_v">  
24 - <text>是否到课</text>  
25 - <view class="sf_v_btn" @click="set_fuc(item,true)">  
26 -  
27 - <view class="sf_v_btn_b" :class="{active:item.is_check}">  
28 - <text class="icon icon-duigou"></text> 22 + <image class="gender" v-if="item.sex!=1" src="/static/imagesV2/stu_selection/icon_female.png" mode="aspectFit"></image>
  23 + <image class="gender" v-else src="/static/imagesV2/stu_selection/icon_male.png" mode="aspectFit"></image>
  24 + </view>
  25 + <view class="operate">
  26 + <view class="operate-label">
  27 + 是否到课:
  28 + </view>
  29 + <view class="operate-content">
  30 + <view class="radio-view" @click="set_fuc(item,true)">
  31 + <view class="radio-view_icon">
  32 + <image v-show="!item.is_check" src="/static/imagesV2/tch_index/radio.png" mode="aspectFit"></image>
  33 + <image v-show="item.is_check" src="/static/imagesV2/tch_index/radio-active.png" mode="aspectFit"></image>
  34 + </view>
  35 + <view class="radio-view_text">
  36 +
29 </view> 37 </view>
30 </view> 38 </view>
31 - <view class="sf_v_btn" @click="set_fuc(item,false)">  
32 -  
33 - <view class="sf_v_btn_b" :class="{active:!item.is_check}">  
34 - <text class="icon icon-duigou"></text> 39 + <view class="radio-view" @click="set_fuc(item,false)">
  40 + <view class="radio-view_icon">
  41 + <image v-show="item.is_check" src="/static/imagesV2/tch_index/radio.png" mode="aspectFit"></image>
  42 + <image v-show="!item.is_check" src="/static/imagesV2/tch_index/radio-active.png" mode="aspectFit"></image>
  43 + </view>
  44 + <view class="radio-view_text">
  45 +
35 </view> 46 </view>
36 </view> 47 </view>
37 </view> 48 </view>
38 </view> 49 </view>
39 </view> 50 </view>
40 - <view class="save_btn" @click="save_fuc"> 51 + </view>
  52 + <view class="footer">
  53 + <view class="btn" @click="save_fuc">
41 保存 54 保存
42 </view> 55 </view>
43 </view> 56 </view>
44 - <!-- 阻止滑动 -->  
45 - <!-- <view @touchmove.stop.prevent='test'></view> -->  
46 </view> 57 </view>
47 </template> 58 </template>
48 59
@@ -314,7 +325,7 @@ @@ -314,7 +325,7 @@
314 <style lang="scss" scoped> 325 <style lang="scss" scoped>
315 .wrap_box{ 326 .wrap_box{
316 width: 100%; 327 width: 100%;
317 - // padding: 30rpx; 328 + padding-bottom: 140rpx;
318 min-height: 100vh; 329 min-height: 100vh;
319 // #ifdef H5 330 // #ifdef H5
320 min-height: calc(100vh - 44px); 331 min-height: calc(100vh - 44px);
@@ -322,99 +333,98 @@ @@ -322,99 +333,98 @@
322 background: #F8F8F8; 333 background: #F8F8F8;
323 position: relative; 334 position: relative;
324 } 335 }
325 -.tel_index_bg{  
326 - position: absolute;  
327 - top: 0;  
328 - z-index: 1;  
329 - width: 100%;  
330 - min-height: 220rpx;  
331 - background: linear-gradient(0deg, #f8f8f8 0%, #5D9DFD 60%, #428EFE 70%, #2D81FF 100%);  
332 -}  
333 -.bz_box{  
334 - width: 100%;  
335 - position: relative;  
336 - z-index: 2;  
337 - padding: 0 30rpx 50rpx;  
338 - .stu_num{  
339 - width: 100%;  
340 - height: 80rpx;  
341 - display: flex;  
342 - align-items: center;  
343 - font-size: 28rpx;  
344 - color: #fff;  
345 - justify-content: space-between;  
346 - 336 +.head {
  337 + display: flex;
  338 + align-items: center;
  339 + justify-content: space-between;
  340 + padding: 30rpx;
  341 + background: #F8F8F8;
  342 + .stu-num {
  343 + font-size: 26rpx;
  344 + font-family: PingFang SC;
  345 + font-weight: 500;
  346 + color: #323232;
  347 + .val {
  348 + color: #2D81FF;
  349 + }
  350 + }
  351 + .btn {
  352 + font-size: 30rpx;
  353 + font-family: PingFang SC;
  354 + font-weight: 500;
347 } 355 }
348 } 356 }
349 -.stu_list{  
350 - width: 100%;  
351 - min-height: 100rpx;  
352 - background: #FFFFFF;  
353 - border-radius: 10rpx;  
354 - .stu_li{  
355 - width: 100%;  
356 - height: 100rpx; 357 +
  358 +.list {
  359 + padding: 0 30rpx;
  360 + .item {
  361 + background: #FFFFFF;
  362 + border-radius: 20rpx;
  363 + padding: 30rpx;
357 display: flex; 364 display: flex;
358 align-items: center; 365 align-items: center;
359 - padding: 0 30rpx;  
360 - &+.stu_li{  
361 - border-top: 1px solid #eee; 366 + & + .item {
  367 + margin-top: 20rpx;
362 } 368 }
363 - .stu_li_name{  
364 - font-size: 30rpx;  
365 - color: #545D71;  
366 - margin-bottom: 10rpx;  
367 - image{  
368 - width: 28rpx;  
369 - height: 28rpx;  
370 - margin-left: 5rpx;  
371 - } 369 + .info {
  370 + flex: 1;
  371 + display: flex;
  372 + align-items: center;
  373 + }
  374 + .gender {
  375 + width: 29rpx !important;
  376 + height: 24rpx !important;
  377 + margin-left: 20rpx;
372 } 378 }
373 - .sf_v{  
374 - font-size: 30rpx;  
375 - color: #A9B1C0; 379 + .operate {
376 display: flex; 380 display: flex;
377 align-items: center; 381 align-items: center;
378 - .sf_v_btn{ 382 + &-label {
  383 + font-size: 26rpx;
  384 + font-family: PingFang SC;
  385 + font-weight: 500;
  386 + color: #646464;
  387 + }
  388 + &-content {
  389 + flex: 1;
379 display: flex; 390 display: flex;
380 align-items: center; 391 align-items: center;
381 - margin-left: 20rpx;  
382 - font-size: 30rpx;  
383 - color: #A9B1C0;  
384 - .sf_v_btn_b{ 392 + .radio-view {
385 display: flex; 393 display: flex;
386 align-items: center; 394 align-items: center;
387 - justify-content: center;  
388 - font-size: 18rpx;  
389 - color: #fff;  
390 - width: 32rpx;  
391 - height: 32rpx;  
392 - border: 1px solid #DDDDDD;  
393 - border-radius: 50%;  
394 - margin-left: 8rpx;  
395 - &.active{  
396 - background: #2D81FF;  
397 - border: 1px solid #2D81FF;  
398 - }  
399 - text{  
400 - font-size: 18rpx;  
401 - line-height: 20rpx; 395 + font-size: 28rpx;
  396 + font-family: PingFang SC;
  397 + font-weight: 400;
  398 + color: #979797;
  399 + margin-left: 20rpx;
  400 + .radio-view_icon {
  401 + width: 30rpx;
  402 + height: 30rpx;
  403 + margin-right: 10rpx;
402 } 404 }
403 } 405 }
404 } 406 }
405 } 407 }
406 } 408 }
407 } 409 }
408 -.save_btn{  
409 - display: flex;  
410 - align-items: center;  
411 - justify-content: center;  
412 - font-size: 32rpx;  
413 - color: #FFFFFF; 410 +.footer {
  411 + position: fixed;
  412 + left: 0;
  413 + bottom: 0;
  414 + z-index: 99;
414 width: 100%; 415 width: 100%;
415 - height: 90rpx;  
416 - background: #2D81FF;  
417 - border-radius: 10rpx;  
418 - margin-top: 40rpx; 416 + background-color: #fff;
  417 + padding: 16rpx 25rpx;
  418 + .btn {
  419 + height: 88rpx;
  420 + background: #2D81FF;
  421 + border-radius: 44rpx;
  422 + line-height: 88rpx;
  423 + font-size: 34rpx;
  424 + font-family: PingFang SC;
  425 + font-weight: 500;
  426 + color: #FFFFFF;
  427 + text-align: center;
  428 + }
419 } 429 }
420 </style> 430 </style>
1 <template> 1 <template>
2 <view class="wrap_box"> 2 <view class="wrap_box">
3 - <!-- <uParse v-if="datas" :content="datas"></uParse> -->  
4 - <!-- stu_bz_index -->  
5 - <view class="tel_index_bg"></view>  
6 - <view class="bz_box">  
7 - <view class="stu_num">  
8 - <!-- <picker mode="date" :value="sx_time" :start="startDate" :end="endDate" @change="bindDateChange">  
9 - <view class="">  
10 - 核对时间:{{sx_time}}<text class="icon icon-arrow-right-copy-copy"></text>  
11 - </view>  
12 - </picker> --> 3 + <u-sticky>
  4 + <view class="search">
13 <picker @change="bindPickerChange" :value="index" :range="tabs" range-key="create_time"> 5 <picker @change="bindPickerChange" :value="index" :range="tabs" range-key="create_time">
14 - <view class="">  
15 - 核对时间:  
16 - {{sxtitle||'请选择时间'}}  
17 - <text class="icon icon-arrow-right-copy-copy"></text> 6 + <view class="search-item">
  7 + <view class="search-item_label">
  8 + 核对时间:
  9 + </view>
  10 + <view class="search-item_content">
  11 + <template v-if="sxtitle">
  12 + {{sxtitle}}
  13 + </template>
  14 + <text class="msg" v-else>请选择时间</text>
  15 + </view>
  16 + <u-icon name="arrow-down-fill" color="#646464" size="10px"></u-icon>
18 </view> 17 </view>
19 </picker> 18 </picker>
20 </view> 19 </view>
21 -  
22 - <view class="stu_list">  
23 - <view class="stu_li" v-for="(item,index) in datas">  
24 - <view class="stu_li_name"> 20 + </u-sticky>
  21 +
  22 + <view class="list">
  23 + <view class="item" v-for="(item,index) in datas" :key="index">
  24 + <view class="info">
  25 + <view class="name">
25 {{item.name}} 26 {{item.name}}
26 - <image v-if="item.sex!=1" src="/static/images/tch/icon_female.png" mode="aspectFit"></image>  
27 - <image v-else src="/static/images/tch/icon_male.png" mode="aspectFit"></image>  
28 </view> 27 </view>
29 - <view class="flex_1"></view>  
30 - <view class="sf_v">  
31 - <text>是否到课:</text>  
32 - <view class="sf_v_btn" v-if="item.dk==1">  
33 -  
34 - </view>  
35 - <view class="sf_v_btn" v-else>  
36 -  
37 - </view> 28 + <image class="gender" v-if="item.sex!=1" src="/static/imagesV2/stu_selection/icon_female.png" mode="aspectFit"></image>
  29 + <image class="gender" v-else src="/static/imagesV2/stu_selection/icon_male.png" mode="aspectFit"></image>
  30 + </view>
  31 + <view class="operate">
  32 + <text class="operate-label">是否到课:</text>
  33 + <view class="operate-content">
  34 + {{item.dk==1 ? '是' : '否'}}
38 </view> 35 </view>
39 </view> 36 </view>
40 - <u-empty v-if="datas.length==0"  
41 - mode="data"  
42 - text="暂无记录"  
43 - icon="/static/images/tch/img_blank.png"  
44 - >  
45 - </u-empty>  
46 </view> 37 </view>
  38 + <u-empty v-if="datas.length==0"
  39 + mode="data"
  40 + text="暂无记录"
  41 + icon="/static/images/tch/img_blank.png"
  42 + >
  43 + </u-empty>
47 </view> 44 </view>
48 - <!-- 阻止滑动 -->  
49 - <!-- <view @touchmove.stop.prevent='test'></view> --> 45 +
50 </view> 46 </view>
51 </template> 47 </template>
52 48
@@ -235,119 +231,72 @@ @@ -235,119 +231,72 @@
235 <style lang="scss" scoped> 231 <style lang="scss" scoped>
236 .wrap_box { 232 .wrap_box {
237 width: 100%; 233 width: 100%;
238 - // padding: 30rpx;  
239 min-height: 100vh; 234 min-height: 100vh;
240 // #ifdef H5 235 // #ifdef H5
241 min-height: calc(100vh - 44px); 236 min-height: calc(100vh - 44px);
242 // #endif 237 // #endif
243 background: #F8F8F8; 238 background: #F8F8F8;
244 position: relative; 239 position: relative;
  240 + padding-bottom: 30rpx;
245 } 241 }
246 242
247 - .tel_index_bg {  
248 - position: absolute;  
249 - top: 0;  
250 - z-index: 1;  
251 - width: 100%;  
252 - min-height: 220rpx;  
253 - background: linear-gradient(0deg, #f8f8f8 0%, #5D9DFD 60%, #428EFE 70%, #2D81FF 100%);  
254 - }  
255 -  
256 - .bz_box {  
257 - width: 100%;  
258 - position: relative;  
259 - z-index: 2;  
260 - padding:0 30rpx 30rpx;  
261 -  
262 - .stu_num {  
263 - width: 100%;  
264 - height: 80rpx; 243 + .search {
  244 + padding: 30rpx;
  245 + background: #F8F8F8;
  246 + &-item {
265 display: flex; 247 display: flex;
266 align-items: center; 248 align-items: center;
267 - font-size: 28rpx;  
268 - color: #fff;  
269 - justify-content: space-between;  
270 - .icon{  
271 - font-size: 24rpx;  
272 - margin-left: 10rpx; 249 + font-size: 26rpx;
  250 + font-family: PingFang SC;
  251 + font-weight: 500;
  252 + color: #323232;
  253 + &_label {
  254 + width: 140rpx;
  255 + }
  256 + &_content {
  257 + margin-right: 5rpx;
  258 + .msg {
  259 + color: #646464;
  260 + }
273 } 261 }
274 } 262 }
275 } 263 }
276 -  
277 - .stu_list {  
278 - width: 100%;  
279 - min-height: 100rpx;  
280 - background: #FFFFFF;  
281 - border-radius: 10rpx;  
282 -  
283 - .stu_li {  
284 - width: 100%;  
285 - height: 100rpx; 264 + .list {
  265 + padding: 0 30rpx;
  266 + .item {
  267 + background: #FFFFFF;
  268 + border-radius: 20rpx;
  269 + padding: 30rpx;
286 display: flex; 270 display: flex;
287 align-items: center; 271 align-items: center;
288 - padding: 0 30rpx;  
289 -  
290 - &+.stu_li {  
291 - border-top: 1px solid #eee; 272 + & + .item {
  273 + margin-top: 20rpx;
292 } 274 }
293 -  
294 - .stu_li_name {  
295 - font-size: 30rpx;  
296 - color: #545D71;  
297 - margin-bottom: 10rpx;  
298 -  
299 - image {  
300 - width: 28rpx;  
301 - height: 28rpx;  
302 - margin-left: 5rpx;  
303 - } 275 + .info {
  276 + flex: 1;
  277 + display: flex;
  278 + align-items: center;
304 } 279 }
305 -  
306 - .sf_v {  
307 - font-size: 30rpx;  
308 - color: #A9B1C0; 280 + .gender {
  281 + width: 29rpx !important;
  282 + height: 24rpx !important;
  283 + margin-left: 20rpx;
  284 + }
  285 + .operate {
309 display: flex; 286 display: flex;
310 align-items: center; 287 align-items: center;
311 -  
312 - .sf_v_btn {  
313 - display: flex;  
314 - align-items: center;  
315 - margin-left: 20rpx;  
316 - font-size: 30rpx;  
317 - color: #A9B1C0;  
318 -  
319 - .sf_v_btn_b {  
320 - display: flex;  
321 - align-items: center;  
322 - justify-content: center;  
323 - font-size: 18rpx;  
324 - color: #fff;  
325 - width: 32rpx;  
326 - height: 32rpx;  
327 - border: 1px solid #DDDDDD;  
328 - border-radius: 50%;  
329 - margin-left: 8rpx;  
330 -  
331 - &.active {  
332 - background: #2D81FF;  
333 - border: 1px solid #2D81FF;  
334 - } 288 + font-size: 26rpx;
  289 + font-family: PingFang SC;
  290 + font-weight: 500;
  291 + color: #646464;
  292 + &-content {
  293 + font-size: 28rpx;
  294 + font-family: PingFang SC;
  295 + font-weight: 500;
  296 + color: #323232;
  297 + margin-left: 5px;
335 } 298 }
336 - }  
337 } 299 }
338 } 300 }
339 } 301 }
340 -  
341 - .save_btn {  
342 - display: flex;  
343 - align-items: center;  
344 - justify-content: center;  
345 - font-size: 32rpx;  
346 - color: #FFFFFF;  
347 - width: 100%;  
348 - height: 90rpx;  
349 - background: #2D81FF;  
350 - border-radius: 10rpx;  
351 - margin-top: 40rpx;  
352 - }  
353 </style> 302 </style>
1 <template> 1 <template>
2 <view class="wrap_box"> 2 <view class="wrap_box">
3 - <!-- <uParse v-if="datas" :content="datas"></uParse> -->  
4 - <view class="tel_index_bg"></view>  
5 <view class="stu_list"> 3 <view class="stu_list">
6 <view class="stu_search"> 4 <view class="stu_search">
7 - <u-icon name="search" size="30" color="#659ff5"></u-icon> 5 + <u-icon name="search" size="24" color="#979797"></u-icon>
8 <input v-model="keywords" confirm-type="search" @confirm="confirm" class="stu_search-input" type="text" 6 <input v-model="keywords" confirm-type="search" @confirm="confirm" class="stu_search-input" type="text"
9 - placeholder="搜索姓名" placeholder-style="color: #428DFE"> 7 + placeholder="搜索姓名" placeholder-style="color: #C3C3C3">
10 </view> 8 </view>
11 <view class="stu_num"> 9 <view class="stu_num">
12 - <image class="stu_num-icon" src="@/static/images/xh_icon13.png"></image>  
13 - <text class="stu_num-text">共{{datas.length}}人</text>  
14 - <image class="stu_num-icon" src="@/static/images/xh_icon13.png"></image> 10 + 共<text class="stu_num-text">{{datas.length}}</text>人
15 </view> 11 </view>
16 <scroll-view style="height: 1200rpx;" :scroll-y="true"> 12 <scroll-view style="height: 1200rpx;" :scroll-y="true">
17 - <view v-for="(item,index) in datas" :key="index" class="stu_li dis_flex">  
18 -  
19 - <image v-if="item.img" class="stu_li_tx" :src="$service.getimg(item.img)" mode="aspectFill"></image>  
20 - <image v-else class="stu_li_tx" src="/static/images/tx.png" mode="aspectFill"></image>  
21 - <view class="flex_1">  
22 - <view class="stu_li_name"> 13 + <view v-for="(item,index) in datas" :key="index" class="stu_item">
  14 +
  15 + <view class="avatar">
  16 + <image class="avatar-img" v-if="item.img" :src="$service.getimg(item.img)" mode="aspectFill"></image>
  17 + <image class="avatar-img" v-else src="/static/imagesV2/tch_index/default-avatar.png" mode="aspectFill"></image>
  18 + <view class="gender">
  19 + <image v-if="item.sex!=1" src="/static/imagesV2/stu_selection/icon_female.png" mode="aspectFit"></image>
  20 + <image v-else src="/static/imagesV2/stu_selection/icon_male.png" mode="aspectFit"></image>
  21 + </view>
  22 + </view>
  23 +
  24 + <view class="info">
  25 + <view class="name">
23 {{item.name}} 26 {{item.name}}
24 - <image v-if="item.sex!=1" src="/static/images/tch/icon_female.png" mode="aspectFit"></image>  
25 - <image v-else src="/static/images/tch/icon_male.png" mode="aspectFit"></image>  
26 </view> 27 </view>
27 - <view class="stu_li_time">  
28 - {{item.add_time}} 入学 28 + <view>
  29 + <text>
  30 + {{item.class_name}}
  31 + </text>
  32 + <text style="margin-left: 20rpx;">
  33 + {{item.add_time}}入学
  34 + </text>
29 </view> 35 </view>
30 </view> 36 </view>
31 - <view class="stu_li_ban">  
32 - {{item.class_name}}  
33 - </view>  
34 </view> 37 </view>
35 <u-empty v-if="datas.length==0" mode="data" text="暂无名单" icon="/static/images/tch/img_blank.png"> 38 <u-empty v-if="datas.length==0" mode="data" text="暂无名单" icon="/static/images/tch/img_blank.png">
36 </u-empty> 39 </u-empty>
@@ -200,96 +203,78 @@ @@ -200,96 +203,78 @@
200 position: relative; 203 position: relative;
201 } 204 }
202 205
203 - .tel_index_bg {  
204 - position: absolute;  
205 - top: 0;  
206 - z-index: 1;  
207 - width: 100%;  
208 - min-height: 220rpx;  
209 - background: linear-gradient(0deg, #f8f8f8 0%, #5D9DFD 60%, #428EFE 70%, #2D81FF 100%);  
210 - }  
211 -  
212 .stu_list { 206 .stu_list {
213 position: relative; 207 position: relative;
214 z-index: 2; 208 z-index: 2;
215 width: 100%; 209 width: 100%;
216 - padding: 0 30rpx 30rpx; 210 + padding: 30rpx;
217 211
218 .stu_search { 212 .stu_search {
219 - background-color: rgba(#fff, 0.4);  
220 - height: 68rpx; 213 + background-color:#fff;
221 display: flex; 214 display: flex;
222 - border-radius: 200rpx; 215 + border-radius: 36rpx;
223 align-items: center; 216 align-items: center;
224 - padding: 0 20rpx;  
225 - 217 + padding: 15rpx 20rpx 15rpx 30rpx;
  218 + border-radius: 36rpx;
226 .stu_search-input { 219 .stu_search-input {
227 flex-grow: 1; 220 flex-grow: 1;
228 } 221 }
229 } 222 }
230 223
231 .stu_num { 224 .stu_num {
232 - width: 100%;  
233 - height: 80rpx;  
234 - display: flex;  
235 - align-items: center;  
236 - font-size: 30rox;  
237 - color: #477FF6;  
238 - justify-content: center;  
239 -  
240 - .stu_num-icon {  
241 - height: 12rpx;  
242 - width: 50rpx;  
243 - }  
244 - 225 + font-size: 26rpx;
  226 + font-family: PingFang SC;
  227 + font-weight: 500;
  228 + color: #323232;
  229 + padding: 20rpx 0;
245 .stu_num-text { 230 .stu_num-text {
246 - color: #477FF6;  
247 - margin: 0 20rpx; 231 + color: #2D81FF;
248 } 232 }
249 } 233 }
250 234
251 - .stu_li {  
252 - width: 100%;  
253 - min-height: 120rpx; 235 + .stu_item {
254 background: #FFFFFF; 236 background: #FFFFFF;
255 - border-radius: 10rpx;  
256 - padding: 24rpx 30rpx; 237 + border-radius: 20rpx;
  238 + padding: 30rpx;
  239 + display: flex;
257 align-items: center; 240 align-items: center;
258 -  
259 - &+.stu_li {  
260 - margin-top: 22rpx; 241 +
  242 + & + .stu_item {
  243 + margin-top: 20rpx;
261 } 244 }
262 -  
263 - .stu_li_tx {  
264 - width: 64rpx;  
265 - height: 64rpx; 245 +
  246 + .avatar {
  247 + width: 110rpx;
  248 + height: 110rpx;
266 border-radius: 50%; 249 border-radius: 50%;
267 - margin-right: 20rpx;  
268 - }  
269 -  
270 - .stu_li_name {  
271 - font-size: 30rpx;  
272 - color: #545D71;  
273 - margin-bottom: 10rpx;  
274 -  
275 - image {  
276 - width: 28rpx;  
277 - height: 28rpx;  
278 - margin-left: 5rpx; 250 + position: relative;
  251 + margin-right: 30rpx;
  252 + .avatar-img {
  253 + border-radius: 50%;
  254 + }
  255 + .gender {
  256 + position: absolute;
  257 + width: 29rpx;
  258 + height: 24rpx;
  259 + right: 0rpx;
  260 + bottom: 12rpx;
279 } 261 }
280 } 262 }
281 -  
282 - .stu_li_time {  
283 - font-size: 28rpx;  
284 - color: #A9B1C0;  
285 - }  
286 -  
287 - .stu_li_ban {  
288 - font-size: 28rpx;  
289 - color: #2D81FF;  
290 - padding: 4rpx 14rpx;  
291 - background: #2D81FF1a; 263 + .info {
  264 + flex: 1;
  265 + font-size: 26rpx;
  266 + font-family: PingFang SC;
  267 + font-weight: 500;
  268 + color: #646464;
  269 + .name {
  270 + font-size: 30rpx;
  271 + font-family: PingFang SC;
  272 + font-weight: bold;
  273 + margin-bottom: 24rpx;
  274 + color: #323232;
  275 + }
292 } 276 }
293 } 277 }
  278 +
294 } 279 }
295 </style> 280 </style>
1 <template> 1 <template>
2 <view class="wrap_box"> 2 <view class="wrap_box">
3 - <!-- <uParse v-if="datas" :content="datas"></uParse> -->  
4 - <!-- stu_bz_index -->  
5 - <view class="tel_index_bg"></view>  
6 <view class="bz_box"> 3 <view class="bz_box">
7 <view class="stu_msg"> 4 <view class="stu_msg">
8 <view class="stu_li"> 5 <view class="stu_li">
@@ -65,18 +62,23 @@ @@ -65,18 +62,23 @@
65 <view class="stu_l"> 62 <view class="stu_l">
66 学号: 63 学号:
67 </view> 64 </view>
68 - <view class="stu_r" style="color: #FF9A18;"> 65 + <view class="stu_r" style="color: #2D81FF;">
69 <!-- 未分配 --> 66 <!-- 未分配 -->
70 - {{datas.study_code||'未分配'}} 67 + {{datas.study_code || '未分配'}}
71 </view> 68 </view>
72 </view> 69 </view>
73 <view class="stu_li"> 70 <view class="stu_li">
74 <view class="stu_l"> 71 <view class="stu_l">
75 住宿办理: 72 住宿办理:
76 </view> 73 </view>
77 - <view class="stu_r" style="color: #66C134;">  
78 - <!-- 住宿状态 1、已缴费 2、未办理 -->  
79 - {{datas.bed_type==1?'已缴费':'未办理'}} 74 + <view class="stu_r">
  75 +
  76 + <view class="state bg" v-if="datas.bed_type==1">
  77 + 已缴费
  78 + </view>
  79 + <view class="state" >
  80 + 未办理
  81 + </view>
80 </view> 82 </view>
81 </view> 83 </view>
82 <view class="stu_li"> 84 <view class="stu_li">
@@ -272,41 +274,51 @@ @@ -272,41 +274,51 @@
272 background: #F8F8F8; 274 background: #F8F8F8;
273 position: relative; 275 position: relative;
274 } 276 }
275 -.tel_index_bg{  
276 - position: absolute;  
277 - top: 0;  
278 - z-index: 1;  
279 - width: 100%;  
280 - min-height: 220rpx;  
281 - background: linear-gradient(0deg, #f8f8f8 0%, #5D9DFD 60%, #428EFE 70%, #2D81FF 100%);  
282 -} 277 +
283 .bz_box{ 278 .bz_box{
284 - width: 100%; 279 + padding: 25rpx;
285 position: relative; 280 position: relative;
286 z-index: 2; 281 z-index: 2;
287 - padding: 30rpx;  
288 } 282 }
289 .stu_msg{ 283 .stu_msg{
290 width: 100%; 284 width: 100%;
291 background: #FFFFFF; 285 background: #FFFFFF;
292 - border-radius: 10rpx; 286 + padding: 0 30rpx;
  287 + border-radius: 20rpx;
293 .stu_li{ 288 .stu_li{
294 width: 100%; 289 width: 100%;
295 - height: 93rpx;  
296 display: flex; 290 display: flex;
297 align-items: center; 291 align-items: center;
298 justify-content: space-between; 292 justify-content: space-between;
299 - padding: 0 30rpx; 293 + padding: 30rpx 0;
300 &+.stu_li{ 294 &+.stu_li{
301 - border-top: 1px solid #eee; 295 + border-top: 1px solid #F3F3F7;
302 } 296 }
303 .stu_l{ 297 .stu_l{
304 - font-size: 32rpx;  
305 - color: #545D71; 298 + font-size: 30rpx;
  299 + font-family: PingFang SC;
  300 + font-weight: 500;
  301 + color: #000000;
306 } 302 }
307 .stu_r{ 303 .stu_r{
308 - font-size: 32rpx;  
309 - color: #A6A9B1; 304 + font-size: 28rpx;
  305 + font-family: PingFang SC;
  306 + font-weight: 400;
  307 + color: #646464;
  308 +
  309 + .state {
  310 + background: rgba(255, 150, 56, 0.15);
  311 + border-radius: 5rpx;
  312 + font-size: 26rpx;
  313 + font-family: PingFang SC;
  314 + font-weight: 500;
  315 + color: #FF9638;
  316 + padding: 5rpx;
  317 + & .bg {
  318 + background: rgba(52, 213, 170, 0.15);
  319 + color: #10C69E;
  320 + }
  321 + }
310 } 322 }
311 } 323 }
312 } 324 }
1 <template> 1 <template>
2 <view class="wrap_box"> 2 <view class="wrap_box">
3 - <!-- <uParse v-if="datas" :content="datas"></uParse> -->  
4 - <view class="tel_index_bg"></view>  
5 <view class="stu_list"> 3 <view class="stu_list">
6 <view class="stu_search"> 4 <view class="stu_search">
7 - <u-icon name="search" size="30" color="#659ff5"></u-icon> 5 + <u-icon name="search" size="30" color="#979797"></u-icon>
8 <input v-model="keywords" confirm-type="search" @confirm="confirm" class="stu_search-input" type="text" 6 <input v-model="keywords" confirm-type="search" @confirm="confirm" class="stu_search-input" type="text"
9 - placeholder="搜索姓名" placeholder-style="color: #428DFE"> 7 + placeholder="搜索姓名" placeholder-style="color: #C3C3C3">
10 </view> 8 </view>
11 <view class="stu_num"> 9 <view class="stu_num">
12 - <image class="stu_num-icon" src="@/static/images/xh_icon13.png"></image>  
13 - <text class="stu_num-text">共{{datas.length}}人</text>  
14 - <image class="stu_num-icon" src="@/static/images/xh_icon13.png"></image> 10 + 共<text class="stu_num-text">{{datas.length}}</text>人
15 </view> 11 </view>
16 <scroll-view style="height: 1200rpx;" :scroll-y="true"> 12 <scroll-view style="height: 1200rpx;" :scroll-y="true">
17 - <view class="stuli_box">  
18 - <view v-for="(item,index) in datas" class="stu_li dis_flex">  
19 - <view class="flex_1">  
20 - <view class="stu_li_name">  
21 - {{item.name}}  
22 - <image v-if="item.sex!=1" src="/static/images/tch/icon_female.png" mode="aspectFit">  
23 - </image>  
24 - <image v-else src="/static/images/tch/icon_male.png" mode="aspectFit"></image>  
25 - </view> 13 + <view class="stu_item" v-for="(item,index) in datas">
  14 + <view class="info">
  15 + <view class="name" >
  16 + {{item.name}}
26 </view> 17 </view>
27 - <view class="stu_bz" @click="$service.jump"  
28 - :data-url="'/pagesA/stu_bz_index/stu_bz_index?id='+item.id"> 18 + <image class="gender" v-if="item.sex!=1" src="/static/imagesV2/stu_selection/icon_female.png" mode="aspectFit"></image>
  19 + <image class="gender" v-else src="/static/imagesV2/stu_selection/icon_male.png" mode="aspectFit"></image>
  20 + </view>
  21 + <view class="operate">
  22 + <view class="btn" @click="$service.jump" :data-url="'/pagesA/stu_bz_index/stu_bz_index?id='+item.id">
  23 + <view class="icon">
  24 + <image src="/static/imagesV2/tch_index/icon11.png" mode=""></image>
  25 + </view>
29 备注信息 26 备注信息
30 </view> 27 </view>
31 - <view class="stu_bz" @click="$service.jump" :data-url="'/pagesA/stu_msg/stu_msg?id='+item.id"> 28 + <view class="btn" @click="$service.jump" :data-url="'/pagesA/stu_msg/stu_msg?id='+item.id">
  29 + <view class="icon">
  30 + <image src="/static/imagesV2/tch_index/icon10.png" mode=""></image>
  31 + </view>
32 查看档案 32 查看档案
33 </view> 33 </view>
34 </view> 34 </view>
35 </view> 35 </view>
36 </scroll-view> 36 </scroll-view>
37 </view> 37 </view>
38 - <!-- 阻止滑动 -->  
39 - <!-- <view @touchmove.stop.prevent='test'></view> --> 38 +
40 </view> 39 </view>
41 </template> 40 </template>
42 41
@@ -180,86 +179,74 @@ @@ -180,86 +179,74 @@
180 position: relative; 179 position: relative;
181 } 180 }
182 181
183 - .tel_index_bg {  
184 - position: absolute;  
185 - top: 0;  
186 - z-index: 1;  
187 - width: 100%;  
188 - min-height: 220rpx;  
189 - background: linear-gradient(0deg, #f8f8f8 0%, #5D9DFD 60%, #428EFE 70%, #2D81FF 100%);  
190 - }  
191 -  
192 .stu_list { 182 .stu_list {
193 position: relative; 183 position: relative;
194 z-index: 2; 184 z-index: 2;
195 width: 100%; 185 width: 100%;
196 - padding: 0 30rpx 30rpx; 186 + padding: 30rpx;
197 187
198 .stu_search { 188 .stu_search {
199 - background-color: rgba(#fff, 0.4);  
200 - height: 68rpx; 189 + background-color:#fff;
201 display: flex; 190 display: flex;
202 - border-radius: 200rpx; 191 + border-radius: 36rpx;
203 align-items: center; 192 align-items: center;
204 - padding: 0 20rpx;  
205 - 193 + padding: 10rpx 20rpx 10rpx 30rpx;
  194 + border-radius: 36rpx;
206 .stu_search-input { 195 .stu_search-input {
207 flex-grow: 1; 196 flex-grow: 1;
208 } 197 }
209 } 198 }
210 - 199 +
211 .stu_num { 200 .stu_num {
212 - width: 100%;  
213 - height: 80rpx;  
214 - display: flex;  
215 - align-items: center;  
216 - font-size: 30rox;  
217 - color: #477FF6;  
218 - justify-content: center;  
219 -  
220 - .stu_num-icon {  
221 - height: 12rpx;  
222 - width: 50rpx;  
223 - }  
224 - 201 + font-size: 26rpx;
  202 + font-family: PingFang SC;
  203 + font-weight: 500;
  204 + color: #323232;
  205 + padding: 20rpx 0;
225 .stu_num-text { 206 .stu_num-text {
226 - color: #477FF6;  
227 - margin: 0 20rpx; 207 + color: #2D81FF;
228 } 208 }
229 } 209 }
230 210
231 - .stuli_box {  
232 - border-radius: 10rpx; 211 + .stu_item {
233 background: #FFFFFF; 212 background: #FFFFFF;
234 - }  
235 -  
236 - .stu_li {  
237 - width: 100%;  
238 - min-height: 120rpx;  
239 - // border-radius: 10rpx;  
240 - padding: 24rpx 30rpx; 213 + border-radius: 20rpx;
  214 + padding: 30rpx;
  215 + display: flex;
241 align-items: center; 216 align-items: center;
242 -  
243 - &+.stu_li {  
244 - border-top: 1px solid #eee; 217 +
  218 + & + .stu_item {
  219 + margin-top: 20rpx;
245 } 220 }
246 -  
247 - .stu_li_name {  
248 - font-size: 30rpx;  
249 - color: #545D71;  
250 - margin-bottom: 10rpx;  
251 -  
252 - image {  
253 - width: 28rpx;  
254 - height: 28rpx;  
255 - margin-left: 5rpx;  
256 - } 221 + .info {
  222 + flex: 1;
  223 + display: flex;
  224 + align-items: center;
257 } 225 }
258 -  
259 - .stu_bz {  
260 - font-size: 30rpx;  
261 - color: #9699A9;  
262 - margin-left: 35rpx; 226 + .gender {
  227 + width: 29rpx !important;
  228 + height: 24rpx !important;
  229 + margin-left: 20rpx;
  230 + }
  231 +
  232 + .operate {
  233 + display: flex;
  234 + align-items: center;
  235 + justify-content: flex-end;
  236 + .btn {
  237 + display: flex;
  238 + align-items: center;
  239 + font-size: 26rpx;
  240 + font-family: PingFang SC;
  241 + font-weight: 500;
  242 + color: #646464;
  243 + margin-left: 30rpx;
  244 + .icon {
  245 + margin-right: 10rpx;
  246 + width: 30rpx;
  247 + height: 30rpx;
  248 + }
  249 + }
263 } 250 }
264 } 251 }
265 } 252 }
1 <template> 1 <template>
2 <view class="wrap_box"> 2 <view class="wrap_box">
3 - <!-- <uParse v-if="datas" :content="datas"></uParse> -->  
4 - <view class="kq_box">  
5 - <view class="kq_bg dis_flex aic ju_c">  
6 - <image class="kq_bgimg" src="/static/images/tbbj.png" mode="widthFix"></image>  
7 - <view class="">  
8 - <text>{{allnum}}</text>分  
9 - </view>  
10 - </view>  
11 - <view class="kq_list_box">  
12 - <view class="kq_list">  
13 - <view v-for="(item,index) in datas" class="kq_li">  
14 - <view class="kq_li_d1 dis_flex aic ju_b">  
15 - <view class="">{{item.title}}</view>  
16 - <view class="kq_li_num">-{{item.class_num}}</view>  
17 - </view>  
18 - <view class="kq_li_d2 dis_flex aic ju_b">  
19 - <view class="user_name oh1">学员:{{item.uid}}</view>  
20 - <view class="kq_li_num">{{item.deduct_time}}</view>  
21 - </view> </view>  
22 - </view>  
23 - </view> 3 + <CustomReturn title="考勤积分" color="#fff" :bgColor="bgColor">
  4 +
  5 + </CustomReturn>
  6 + <view class="bg-img">
  7 + <image src="/static/imagesV2/tch_index/bg1.png" mode="aspectFill"></image>
24 </view> 8 </view>
25 9
26 - <!-- 阻止滑动 -->  
27 - <!-- <view @touchmove.stop.prevent='test'></view> --> 10 + <PaddingTopB>
  11 + <view class="main">
  12 + <view class="head">
  13 + <view class="head-label">
  14 + 班级考勤积分(分)
  15 + </view>
  16 + <view class="head-content">
  17 + {{allnum}}
  18 + </view>
  19 + </view>
  20 +
  21 + <view class="list">
  22 + <view class="item" v-for="(item,index) in datas" :key="index">
  23 + <view class="item-cell">
  24 + <view class="title">
  25 + {{item.title}}
  26 + </view>
  27 + <view class="value">
  28 + -{{item.class_num}}
  29 + </view>
  30 + </view>
  31 + <view class="item-cell">
  32 + <view class="name">
  33 + 学员:{{item.uid}}
  34 + </view>
  35 + <view>
  36 + {{item.deduct_time}}
  37 + </view>
  38 + </view>
  39 + </view>
  40 + </view>
  41 +
  42 + </view>
  43 +
  44 +
  45 + </PaddingTopB>
28 </view> 46 </view>
29 </template> 47 </template>
30 48
@@ -34,19 +52,33 @@ @@ -34,19 +52,33 @@
34 mapState, 52 mapState,
35 mapMutations 53 mapMutations
36 } from 'vuex' 54 } from 'vuex'
  55 + import CustomReturn from "@/components/CustomReturn/index.vue"
  56 + import PaddingTopB from "@/components/PaddingTopB/index.vue"
37 var that 57 var that
38 export default { 58 export default {
  59 + components: {
  60 + CustomReturn,
  61 + PaddingTopB
  62 + },
39 data() { 63 data() {
40 return { 64 return {
  65 + bgColor: 'transparent',
41 options:'', 66 options:'',
42 - datas:'',  
43 - allnum:'', 67 + datas:'',
  68 + allnum:'',
44 page:1 69 page:1
45 } 70 }
46 }, 71 },
47 computed: { 72 computed: {
48 ...mapState(['hasLogin', 'forcedLogin', 'userName', 'userinfo','nowtime']), 73 ...mapState(['hasLogin', 'forcedLogin', 'userName', 'userinfo','nowtime']),
49 }, 74 },
  75 + onPageScroll(e) {
  76 + if(e.scrollTop > 0 ) {
  77 + this.bgColor = '#3384fc'
  78 + }else {
  79 + this.bgColor = 'transparent'
  80 + }
  81 + },
50 onLoad(e) { 82 onLoad(e) {
51 that=this 83 that=this
52 that.options=e||{} 84 that.options=e||{}
@@ -56,83 +88,83 @@ @@ -56,83 +88,83 @@
56 }, 88 },
57 onShow() { 89 onShow() {
58 that.onRetry() 90 that.onRetry()
59 - },  
60 - onReachBottom() {  
61 - that.getdata() 91 + },
  92 + onReachBottom() {
  93 + that.getdata()
62 }, 94 },
63 methods: { 95 methods: {
64 // ...mapMutations(['wxshouquan','login']), 96 // ...mapMutations(['wxshouquan','login']),
65 test(){}, 97 test(){},
66 - onRetry(){  
67 - that.page=1  
68 - that.datas = []  
69 - that.getdata()  
70 - },  
71 - getdata() {  
72 -  
73 - var jkurl="/teacher/credith"  
74 - //类型1、成绩变化 2、思想动态 3、生活  
75 - var datas={  
76 - id:that.options.id,  
77 - page:that.page,  
78 - type:that.active  
79 - }  
80 - // if(that.data_last == true){  
81 - // return  
82 - // }  
83 - if (that.btnkg == 1) {  
84 - return  
85 - } else {  
86 - that.btnkg = 1  
87 - }  
88 - var page_now=that.page  
89 - that.$service.P_post(jkurl, datas).then(res => {  
90 - that.btnkg = 0  
91 - console.log(res)  
92 - if (res.code == 1) {  
93 - var datas = res.data  
94 - console.log(typeof datas)  
95 -  
96 - if (typeof datas == 'string') {  
97 - datas = JSON.parse(datas)  
98 - }  
99 -  
100 - if (page_now == 1) {  
101 -  
102 - that.datas = datas.data  
103 -  
104 - } else {  
105 - if (datas.data.length == 0) {  
106 - that.data_last = true  
107 - return  
108 - }  
109 - that.data_last = false  
110 - that.datas = that.datas.concat(datas.data)  
111 - }  
112 - that.allnum=datas.allnum  
113 - that.page++  
114 -  
115 - } else {  
116 - if (res.msg) {  
117 - uni.showToast({  
118 - icon: 'none',  
119 - title: res.msg  
120 - })  
121 - } else {  
122 - uni.showToast({  
123 - icon: 'none',  
124 - title: '操作失败'  
125 - })  
126 - }  
127 - }  
128 - }).catch(e => {  
129 - that.btnkg = 0  
130 - console.log(e)  
131 - uni.showToast({  
132 - icon: 'none',  
133 - title: '操作失败'  
134 - })  
135 - }) 98 + onRetry(){
  99 + that.page=1
  100 + that.datas = []
  101 + that.getdata()
  102 + },
  103 + getdata() {
  104 +
  105 + var jkurl="/teacher/credith"
  106 + //类型1、成绩变化 2、思想动态 3、生活
  107 + var datas={
  108 + id:that.options.id,
  109 + page:that.page,
  110 + type:that.active
  111 + }
  112 + // if(that.data_last == true){
  113 + // return
  114 + // }
  115 + if (that.btnkg == 1) {
  116 + return
  117 + } else {
  118 + that.btnkg = 1
  119 + }
  120 + var page_now=that.page
  121 + that.$service.P_post(jkurl, datas).then(res => {
  122 + that.btnkg = 0
  123 + console.log(res)
  124 + if (res.code == 1) {
  125 + var datas = res.data
  126 + console.log(typeof datas)
  127 +
  128 + if (typeof datas == 'string') {
  129 + datas = JSON.parse(datas)
  130 + }
  131 +
  132 + if (page_now == 1) {
  133 +
  134 + that.datas = datas.data
  135 +
  136 + } else {
  137 + if (datas.data.length == 0) {
  138 + that.data_last = true
  139 + return
  140 + }
  141 + that.data_last = false
  142 + that.datas = that.datas.concat(datas.data)
  143 + }
  144 + that.allnum=datas.allnum
  145 + that.page++
  146 +
  147 + } else {
  148 + if (res.msg) {
  149 + uni.showToast({
  150 + icon: 'none',
  151 + title: res.msg
  152 + })
  153 + } else {
  154 + uni.showToast({
  155 + icon: 'none',
  156 + title: '操作失败'
  157 + })
  158 + }
  159 + }
  160 + }).catch(e => {
  161 + that.btnkg = 0
  162 + console.log(e)
  163 + uni.showToast({
  164 + icon: 'none',
  165 + title: '操作失败'
  166 + })
  167 + })
136 }, 168 },
137 getimg(img){ 169 getimg(img){
138 return service.getimg(img) 170 return service.getimg(img)
@@ -163,78 +195,79 @@ @@ -163,78 +195,79 @@
163 <style lang="scss" scoped> 195 <style lang="scss" scoped>
164 .wrap_box{ 196 .wrap_box{
165 width: 100%; 197 width: 100%;
166 - // padding: 30rpx;  
167 - min-height: 100vh;  
168 - // #ifdef H5  
169 - min-height: calc(100vh - 44px);  
170 - // #endif  
171 - background: #F8F8F8;  
172 -}  
173 -.kq_box{  
174 - width: 100%;  
175 - position: relative;  
176 - .kq_bg{  
177 - position: relative;  
178 - width: 100%;  
179 - height: 250rpx;  
180 - font-size: 32rpx;  
181 - color: #fff;  
182 - .kq_bgimg{  
183 - position: absolute;  
184 - top: 0;  
185 - z-index: 1;  
186 - width: 100%;  
187 - height: 250rpx;  
188 - font-size: 32rpx;  
189 - color: #fff;  
190 -  
191 -  
192 - }  
193 - view{  
194 - position: relative;  
195 - top: -40rpx;  
196 - z-index: 2;  
197 - text{  
198 - font-size: 72rpx;  
199 - font-weight: bold;  
200 - }  
201 - }  
202 - }  
203 -}  
204 -.kq_list_box{  
205 - width: 100%;  
206 - padding: 30rpx;  
207 - .kq_list{  
208 - width: 100%;  
209 - background: #fff;  
210 - border-radius: 10rpx;  
211 - .kq_li{  
212 - width: 100%;  
213 - padding: 28rpx;  
214 - min-height: 150rpx;  
215 - display: flex;  
216 - flex-direction: column;  
217 - justify-content: space-between;  
218 - &+.kq_li{  
219 - border-top: 1px solid #f8f8f8;  
220 - }  
221 - .kq_li_d1{  
222 - font-size: 32rpx;  
223 - color: #545D71;  
224 - .user_name{  
225 - max-width: 330rpx;  
226 - line-height: 36rpx;  
227 - height: 36rpx;  
228 - }  
229 - .kq_li_num{  
230 - color: #FF9000;  
231 - }  
232 - }  
233 - .kq_li_d2{  
234 - font-size: 28rpx;  
235 - color: #A9B1C0;  
236 - }  
237 - }  
238 - } 198 + // padding: 30rpx;
  199 + min-height: 100vh;
  200 + // #ifdef H5
  201 + min-height: calc(100vh - 44px);
  202 + // #endif
  203 + background: #f3f4f6;
  204 +}
  205 +.bg-img {
  206 + height: 504rpx;
  207 + position: absolute;
  208 + width: 100%;
  209 +}
  210 +.main {
  211 + width: 100%;
  212 + padding: 25rpx;
  213 + box-sizing: border-box;
  214 +}
  215 +.head {
  216 + font-family: PingFang SC;
  217 + color: #FFFFFF;
  218 + margin-top: 50rpx;
  219 + &-label {
  220 + font-size: 30rpx;
  221 + font-weight: 500;
  222 + }
  223 + &-content {
  224 + font-size: 60rpx;
  225 + font-weight: bold;
  226 + margin-top: 20rpx;
  227 + }
  228 +}
  229 +
  230 +.list {
  231 + padding: 0 30rpx;
  232 + border-radius: 20rpx;
  233 + background-color: #fff;
  234 + margin-top: 30rpx;
  235 + .item {
  236 + border-bottom: 1px solid #FAFBFA;
  237 + padding: 30rpx 0;
  238 + &:last-child {
  239 + border: 0;
  240 + }
  241 + &-cell {
  242 + display: flex;
  243 + align-items: center;
  244 + font-family: PingFang SC;
  245 + justify-content: space-between;
  246 + margin-bottom: 20rpx;
  247 + &:last-child {
  248 + margin-bottom: 0;
  249 + }
  250 + .title {
  251 + font-size: 30rpx;
  252 + font-weight: 500;
  253 + color: #323232;
  254 + }
  255 + .value {
  256 + font-size: 30rpx;
  257 + font-weight: 500;
  258 + color: #FC5101;
  259 + }
  260 + .name {
  261 + font-size: 26rpx;
  262 + font-weight: 500;
  263 + color: #979797;
  264 + }
  265 + .time {
  266 + font-size: 24rpx;
  267 + font-weight: 400;
  268 + color: #979797;
  269 + }
  270 + }
  271 + }
239 } 272 }
240 </style> 273 </style>
1 <template> 1 <template>
2 <view class="oneSetting"> 2 <view class="oneSetting">
3 - <!-- 资料 设置 -->  
4 - <view class="tel_index_bg"></view>  
5 - <view class="vio_list">  
6 - <view class="msg_box ">  
7 - <view class="content-head-wrap flex">  
8 - <view class="content-head-img">  
9 - <!-- <image :src="imgUrl" mode="aspectFill"></image> -->  
10 - <avatar selWidth="250rpx" selHeight="250rpx" @upload="myUpload"  
11 - :avatarSrc="userdata.img?$service.getimg(userdata.img):imgUrl"  
12 - avatarStyle="width: 164rpx;height: 164rpx;border-radius: 50%;" inner=true></avatar>  
13 - </view> 3 +
  4 + <view class="cell">
  5 + <view class="cell-item">
  6 + <view class="cell-item_label">
  7 + 头像
  8 + </view>
  9 + <view class="cell-item_content">
  10 + <avatar selWidth="250rpx" selHeight="250rpx" @upload="myUpload"
  11 + :avatarSrc="userdata.img?$service.getimg(userdata.img):imgUrl"
  12 + avatarStyle="width: 100rpx;height: 100rpx;border-radius: 50%;" inner=true></avatar>
14 </view> 13 </view>
15 - <view class="content-item flex">  
16 - <view>  
17 - 姓名  
18 - </view>  
19 - <view class="user-name">  
20 -  
21 - {{userdata.nick}}  
22 - </view> 14 + </view>
  15 + <view class="cell-item">
  16 + <view class="cell-item_label">
  17 + 姓名
23 </view> 18 </view>
24 - <view class="content-item flex">  
25 - <view>  
26 - 性别  
27 - </view>  
28 - <view class="user-name">  
29 - <!-- 性别 1、男 2、女 -->  
30 - {{userdata.sex==1?'男':'女'}}  
31 - </view> 19 + <view class="cell-item_content">
  20 + {{userdata.nick}}
32 </view> 21 </view>
33 - <view class="content-item flex">  
34 - <view>  
35 - 手机号  
36 - </view>  
37 - <view class="user-name">  
38 - {{userdata.phone}}  
39 - </view> 22 + </view>
  23 + <view class="cell-item">
  24 + <view class="cell-item_label">
  25 + 性别
40 </view> 26 </view>
41 - <view class="sign-out" @click="logout_fuc">  
42 - 退出登录 27 + <view class="cell-item_content">
  28 + <!-- 性别 1、男 2、女 -->
  29 + {{userdata.sex==1?'男':'女'}}
  30 + </view>
  31 + </view>
  32 + <view class="cell-item">
  33 + <view class="cell-item_label">
  34 + 手机号
  35 + </view>
  36 + <view class="cell-item_content">
  37 + {{userdata.phone}}
43 </view> 38 </view>
44 -  
45 </view> 39 </view>
46 </view> 40 </view>
  41 +
47 </view> 42 </view>
48 </template> 43 </template>
49 44
@@ -254,4 +249,37 @@ @@ -254,4 +249,37 @@
254 color: #2D81FF; 249 color: #2D81FF;
255 } 250 }
256 } 251 }
  252 +
  253 +
  254 + .cell {
  255 + background-color: #fff;
  256 + padding: 0 30rpx;
  257 + border-radius: 20rpx;
  258 + margin: 25rpx;
  259 + &-item {
  260 + display: flex;
  261 + align-items: center;
  262 + justify-content: space-between;
  263 + padding: 30rpx 0;
  264 + border-bottom: 1px solid #F3F3F7;
  265 +
  266 + &:last-child {
  267 + border: 0;
  268 + }
  269 +
  270 + &_label {
  271 + font-size: 30rpx;
  272 + font-family: PingFang SC;
  273 + font-weight: 500;
  274 + color: #000000;
  275 + }
  276 + &_content {
  277 + font-size: 28rpx;
  278 + font-family: PingFang SC;
  279 + font-weight: 400;
  280 + color: #646464;
  281 + }
  282 + }
  283 +
  284 + }
257 </style> 285 </style>
1 <template> 1 <template>
2 <view class="wrap_box"> 2 <view class="wrap_box">
3 - <!-- <uParse v-if="datas" :content="datas"></uParse> -->  
4 - <image class="ph_banner" src="/static/images/phb.png" mode="aspectFill"></image>  
5 - <view class="ph_box">  
6 - <view class="ph_tit dis_flex aic">  
7 - <view class="ph_d1">  
8 - 排名  
9 - </view>  
10 - <view class="ph_d2">  
11 - 班级  
12 - </view>  
13 - <view class="ph_d3">  
14 - 得分  
15 - </view>  
16 - </view>  
17 - <view v-for="(item,index) in datas" class="ph_li">  
18 - <view class="ph_d1">  
19 - <image v-if="item.key==1" src="/static/images/ph.png" mode="aspectFit"></image>  
20 - <image v-else-if="item.key==2" src="/static/images/ph2.png" mode="aspectFit"></image>  
21 - <image v-else-if="item.key==3" src="/static/images/ph3.png" mode="aspectFit"></image>  
22 - <text v-else>{{item.key}}</text>  
23 - </view>  
24 - <view class="ph_d2">  
25 - {{item.title}}  
26 - </view>  
27 - <view class="ph_d3">  
28 - {{item.num}}分  
29 - </view>  
30 - </view>  
31 - <view class="ph_li ph_li_b">  
32 - <view class="ph_d1">  
33 - <image v-if="mydata.key==0" src="/static/images/ph.png" mode="aspectFit"></image>  
34 - <image v-else-if="mydata.key==1" src="/static/images/ph2.png" mode="aspectFit"></image>  
35 - <image v-else-if="mydata.key==2" src="/static/images/ph3.png" mode="aspectFit"></image>  
36 - <text v-else>{{mydata.key}}</text>  
37 - <!-- <text>{{mydata.key}}</text> -->  
38 - </view>  
39 - <view class="ph_d2">  
40 - {{mydata.title}}<text>本班</text>  
41 - </view>  
42 - <view class="ph_d3">  
43 - {{mydata.num}}分 3 + <CustomReturn title="校园排行榜" color="#fff" :bgColor="bgColor">
  4 +
  5 + </CustomReturn>
  6 + <view class="bg-img">
  7 + <image src="/static/imagesV2/icon18.png" mode="aspectFill"></image>
  8 + </view>
  9 +
  10 + <PaddingTopB>
  11 +
  12 + <view class="main">
  13 +
  14 + <view class="card">
  15 + <view class="head">
  16 + <view class="icon">
  17 + <image src="/static/imagesV2/icon19.png" mode="aspectFill"></image>
  18 + </view>
  19 + <view class="title">
  20 + 班级考勤排名
  21 + </view>
  22 + <view class="icon">
  23 + <image src="/static/imagesV2/icon19s.png" mode="aspectFill"></image>
  24 + </view>
  25 + </view>
  26 +
  27 + <view class="list">
  28 + <view class="item" v-for="(item,index) in datas">
  29 + <view class="item-index">
  30 + <image v-if="item.key==1" src="/static/imagesV2/icon20.png" mode="aspectFit"></image>
  31 + <image v-else-if="item.key==2" src="/static/imagesV2/icon21.png" mode="aspectFit"></image>
  32 + <image v-else-if="item.key==3" src="/static/imagesV2/icon22.png" mode="aspectFit"></image>
  33 + <text v-else>{{item.key}}</text>
  34 + </view>
  35 + <view class="item-title">
  36 + {{item.title}}
  37 + </view>
  38 + <view class="item-val">
  39 + {{item.num}}
  40 + </view>
  41 + <view class="item-unit">
  42 +
  43 + </view>
  44 + </view>
  45 + <u-empty
  46 + v-if="datas.length==0"
  47 + mode="data"
  48 + text="暂无数据"
  49 + icon="/static/images/tch/img_blank.png"
  50 + >
  51 + </u-empty>
  52 + </view>
  53 +
  54 + <view class="footer">
  55 + <view class="item">
  56 + <view class="item-index">
  57 + <image v-if="mydata.key==1" src="/static/imagesV2/icon20.png" mode="aspectFit"></image>
  58 + <image v-else-if="mydata.key==2" src="/static/imagesV2/icon21.png" mode="aspectFit"></image>
  59 + <image v-else-if="mydata.key==3" src="/static/imagesV2/icon22.png" mode="aspectFit"></image>
  60 + <text v-else>{{mydata.key}}</text>
  61 + </view>
  62 + <view class="item-title">
  63 + {{mydata.title || ''}}
  64 + </view>
  65 + <view class="item-tabs">
  66 + <view class="tab">
  67 + 本班
  68 + </view>
  69 + </view>
  70 + <view class="item-val">
  71 + {{mydata.num || ''}}
  72 + </view>
  73 + <view class="item-unit">
  74 +
  75 + </view>
  76 + </view>
  77 + </view>
44 </view> 78 </view>
  79 +
  80 +
  81 +
  82 +
45 </view> 83 </view>
46 - </view>  
47 - <!-- 阻止滑动 -->  
48 - <!-- <view @touchmove.stop.prevent='test'></view> --> 84 +
  85 + </PaddingTopB>
  86 +
49 </view> 87 </view>
50 </template> 88 </template>
51 89
@@ -55,10 +93,17 @@ @@ -55,10 +93,17 @@
55 mapState, 93 mapState,
56 mapMutations 94 mapMutations
57 } from 'vuex' 95 } from 'vuex'
  96 + import CustomReturn from "@/components/CustomReturn/index.vue"
  97 + import PaddingTopB from "@/components/PaddingTopB/index.vue"
58 var that 98 var that
59 export default { 99 export default {
  100 + components: {
  101 + CustomReturn,
  102 + PaddingTopB
  103 + },
60 data() { 104 data() {
61 return { 105 return {
  106 + bgColor: 'transparent',
62 options:'', 107 options:'',
63 datas:'', 108 datas:'',
64 mydata:'' 109 mydata:''
@@ -67,6 +112,13 @@ @@ -67,6 +112,13 @@
67 computed: { 112 computed: {
68 ...mapState(['hasLogin', 'forcedLogin', 'userName', 'userinfo','nowtime']), 113 ...mapState(['hasLogin', 'forcedLogin', 'userName', 'userinfo','nowtime']),
69 }, 114 },
  115 + onPageScroll(e) {
  116 + if(e.scrollTop > 0 ) {
  117 + this.bgColor = '#3384fc'
  118 + }else {
  119 + this.bgColor = 'transparent'
  120 + }
  121 + },
70 onLoad(e) { 122 onLoad(e) {
71 that=this 123 that=this
72 that.options=e||{} 124 that.options=e||{}
@@ -161,87 +213,113 @@ @@ -161,87 +213,113 @@
161 // #ifdef H5 213 // #ifdef H5
162 min-height: calc(100vh - 44px); 214 min-height: calc(100vh - 44px);
163 // #endif 215 // #endif
164 - background: #F8F8F8; 216 + background: #3384fc;
165 } 217 }
166 -.ph_banner{ 218 +.bg-img {
  219 + height: 100vh;
  220 + position: absolute;
167 width: 100%; 221 width: 100%;
168 - height: 340rpx;  
169 - position: relative;  
170 - z-index: 1;  
171 - margin-bottom: -40rpx;  
172 -}  
173 -.ph_box{  
174 - position: relative;  
175 - z-index: 2;  
176 - background: #FFFFFF;  
177 - border-radius: 30rpx 30rpx 0 0;  
178 - padding: 30rpx 30rpx 130rpx;  
179 - min-height: calc(100vh - 300rpx);  
180 - // #ifdef H5  
181 - min-height: calc(100vh - 44px - 300rpx);  
182 - // #endif 222 + top: 0;
183 } 223 }
184 -.ph_tit{  
185 - font-size: 28rpx;  
186 - color: #929399;  
187 - height: 60rpx;  
188 - .ph_d1{  
189 - width: 60rpx;  
190 - margin-right: 40rpx;  
191 - }  
192 - .ph_d2{  
193 - flex: 1;  
194 - margin-right: 40rpx;  
195 - text-align: left;  
196 - }  
197 - .ph_d3{  
198 - text-align: right;  
199 - } 224 +.main {
  225 + width: 100%;
  226 + padding: 25rpx 25rpx 135rpx;
  227 + box-sizing: border-box;
  228 + margin-top: 250rpx;
200 } 229 }
201 -.ph_li{  
202 - font-size: 32rpx;  
203 - color: #545C71;  
204 - height: 120rpx;  
205 - display: flex;  
206 - align-items: center;  
207 -  
208 - .ph_d1{  
209 - width: 60rpx;  
210 - margin-right: 40rpx; 230 +
  231 +.card {
  232 + background-color: #fff;
  233 + border-radius: 20px;
  234 + overflow: hidden;
  235 + .head {
211 display: flex; 236 display: flex;
212 align-items: center; 237 align-items: center;
213 justify-content: center; 238 justify-content: center;
214 - font-size: 30rpx;  
215 - image{  
216 - width: 60rpx;  
217 - height: 60rpx; 239 + padding: 50rpx 0 30rpx;
  240 + background: linear-gradient(to bottom, #AEC7FF 0%, #FFFFFF 100%);
  241 + .icon {
  242 + width: 40rpx;
  243 + height: 40rpx;
  244 + }
  245 + .title {
  246 + font-size: 32rpx;
  247 + font-family: PingFang SC;
  248 + font-weight: bold;
  249 + color: #323232;
  250 + margin: 0 20rpx;
218 } 251 }
219 } 252 }
220 - .ph_d2{  
221 - flex: 1;  
222 - margin-right: 40rpx;  
223 - text-align: left;  
224 - text{  
225 - font-size: 28rpx;  
226 - color: #2D81FF;  
227 - margin-left: 10rpx;  
228 - padding: 5rpx 14rpx;  
229 - background: rgba(45, 129, 255, .1);  
230 - border-radius: 10rpx; 253 +
  254 + .list,
  255 + .footer{
  256 + padding: 0 30rpx;
  257 + .item {
  258 + display: flex;
  259 + align-items: center;
  260 + font-family: PingFang SC;
  261 + padding: 30rpx 0;
  262 + border-bottom: 1px solid #FAFBFA;
  263 + padding: 30rpx 0;
  264 + &:last-child {
  265 + border: 0;
  266 + }
  267 + &-index {
  268 + width: 50rpx;
  269 + height: 50rpx;
  270 + font-size: 30rpx;
  271 + font-weight: bold;
  272 + color: #979797;
  273 + display: flex;
  274 + align-items: center;
  275 + justify-content: center;
  276 + }
  277 + &-title {
  278 + flex: 1;
  279 + margin: 0 20rpx;
  280 + font-size: 28rpx;
  281 + font-weight: 500;
  282 + color: #323232;
  283 + }
  284 + &-val {
  285 + font-size: 32rpx;
  286 + font-weight: bold;
  287 + color: #2D81FF;
  288 + }
  289 + &-unit {
  290 + font-size: 26rpx;
  291 + color: #646464;
  292 + }
231 } 293 }
232 } 294 }
233 - .ph_d3{  
234 - text-align: right; 295 +
  296 + .footer {
  297 + position: fixed;
  298 + bottom: 0;
  299 + left: 0;
  300 + width: 100%;
  301 + background-color: #fff;
  302 + padding: 0 55rpx;
  303 + box-sizing: border-box;
  304 + .item-title {
  305 + flex: unset;
  306 + }
  307 + .item-tabs {
  308 + flex: 1;
  309 + .tab {
  310 + width: 80rpx;
  311 + height: 44rpx;
  312 + text-align: center;
  313 + line-height: 44rpx;
  314 + font-size: 26rpx;
  315 + font-family: PingFang SC;
  316 + font-weight: 400;
  317 + color: #448EFE;
  318 + background-color: rgba(49, 132, 255, 0.08);
  319 + border-radius: 5rpx;
  320 + }
  321 + }
235 } 322 }
236 } 323 }
237 -.ph_li_b{  
238 - position: fixed;  
239 - bottom: 0;  
240 - z-index: 900;  
241 - left: 0;  
242 - width: 100%;  
243 - background: #fff;  
244 - padding: 0 30rpx;  
245 - box-shadow: 0px 3rpx 8px 0px rgba(207, 207, 207, 0.5);  
246 -} 324 +
247 </style> 325 </style>
@@ -13,6 +13,7 @@ @@ -13,6 +13,7 @@
13 <view class="vio_sx dis_flex aic"> 13 <view class="vio_sx dis_flex aic">
14 <picker mode="date" :value="vio_time" :start="startDate" :end="endDate" @change="bindDateChange"> 14 <picker mode="date" :value="vio_time" :start="startDate" :end="endDate" @change="bindDateChange">
15 <view class="vio_time"> 15 <view class="vio_time">
  16 +
16 <view class="flex_1"> 17 <view class="flex_1">
17 {{vio_time||'请选择时间'}} 18 {{vio_time||'请选择时间'}}
18 </view> 19 </view>
@@ -20,51 +21,71 @@ @@ -20,51 +21,71 @@
20 </view> 21 </view>
21 </picker> 22 </picker>
22 <view class="vio_ss"> 23 <view class="vio_ss">
23 - <input type="text" placeholder="请输入姓名" v-model="name" @confirm="onRetry">  
24 <text class="icon icon-sousuo" @click="onRetry"></text> 24 <text class="icon icon-sousuo" @click="onRetry"></text>
  25 + <input type="text" placeholder="请输入姓名" v-model="name" @confirm="onRetry">
  26 +
25 </view> 27 </view>
26 </view> 28 </view>
27 </view> 29 </view>
28 - <view class="vio_list">  
29 - <view class="vio_li" v-for="(item,index) in datas">  
30 - <view class="vio_li_msg">  
31 - <view class="vio_li_tit">  
32 - <text class="li_type"></text>  
33 - <text class="li_name">{{item.title}}</text>  
34 - <block v-if="active==5">  
35 - <view v-if="item.type==1" class="li_tip" style="background:#2D81FF1a"><text style="color:#2D81FF">事假</text></view>  
36 - <view v-else class="li_tip" style="background:#FF90001a"><text style="color:#FF9000">病假</text></view>  
37 - </block>  
38 - <text class="identification" style="color: #FF9000;" v-if="item.examine === AUDITSTATUS.PENDINGREVIEW">待审核</text>  
39 - <text class="identification" style="color: #67c23a;" v-else-if="item.examine === AUDITSTATUS.APPROVED">已通过</text>  
40 - <text class="identification" style="color: #f56c6c;" v-else-if="item.examine === AUDITSTATUS.FAILED">未通过</text>  
41 - <view class="flex_1"></view>  
42 - <text v-if="active==5||active==6">学员:{{item.name}}</text>  
43 - <text v-else>学员:{{item.uid}}</text>  
44 - </view>  
45 - <view class="vio_li_inr">  
46 - {{item.content}} 30 + <view class="list">
  31 + <view class="item" v-for="(item,index) in datas">
  32 + <view class="item-top">
  33 + <template v-if="active==5">
  34 + <view class="tab" v-if="item.type==1">
  35 + 事假
  36 + </view>
  37 + <view class="tab bg" v-else>
  38 + 病假
  39 + </view>
  40 + </template>
  41 +
  42 + <view class="name">
  43 + <template v-if="active==5||active==6">
  44 + {{item.name}}
  45 + </template>
  46 + <template v-else>
  47 + {{item.uid}}
  48 + </template>
47 </view> 49 </view>
  50 +
  51 + <text class="state" v-if="item.examine === AUDITSTATUS.PENDINGREVIEW">
  52 + 待审核
  53 + </text>
  54 + <text class="state bg" v-else-if="item.examine === AUDITSTATUS.APPROVED">
  55 + 已通过
  56 + </text>
  57 + <text class="state bg1" v-else-if="item.examine === AUDITSTATUS.FAILED">
  58 + 未通过
  59 + </text>
  60 +
48 </view> 61 </view>
49 - <view v-if="active==5" class="li_time">  
50 - {{item.start_time}} 62 + <view class="item-remarks" v-if="active==5">
  63 + {{item.content || ''}}
51 </view> 64 </view>
52 - <view v-else-if="active==6" class="li_time">  
53 - {{item.create_time}} 65 + <view class="item-title" v-else>
  66 + <text class="icon"></text>
  67 + <text class="content">
  68 + <template v-if="active==6">
  69 + {{item.content || ''}}
  70 + </template>
  71 + <template v-else>
  72 + {{item.title}}
  73 + </template>
  74 + </text>
54 </view> 75 </view>
55 - <view v-else class="li_time">  
56 - {{item.deduct_time}} 76 + <view class="item-time">
  77 + <template v-if="active==5">
  78 + {{item.start_time}}
  79 + </template>
  80 + <template v-else-if="active==6">
  81 + {{item.create_time}}
  82 + </template>
  83 + <template v-else>
  84 + {{item.deduct_time}}
  85 + </template>
57 </view> 86 </view>
58 - </view>  
59 - <u-empty v-if="datas.length==0"  
60 - mode="data"  
61 - text="暂无违纪"  
62 - icon="/static/images/tch/img_blank.png"  
63 - >  
64 - </u-empty> 87 + </view>
65 </view> 88 </view>
66 - <!-- 阻止滑动 -->  
67 - <!-- <view @touchmove.stop.prevent='test'></view> -->  
68 </view> 89 </view>
69 </template> 90 </template>
70 91
@@ -272,41 +293,34 @@ @@ -272,41 +293,34 @@
272 background: #F8F8F8; 293 background: #F8F8F8;
273 } 294 }
274 .vio_top{ 295 .vio_top{
275 - // position: absolute;  
276 - // top: 0;  
277 - // z-index: 1;  
278 width: 100%; 296 width: 100%;
279 - min-height: 220rpx;  
280 - background: linear-gradient(0deg, rgba(45, 129, 255, .01) 0%, #428EFE 80%, #2D81FF 100%);  
281 -}  
282 -.vip_tab_list{  
283 - padding: 0 30rpx;  
284 } 297 }
285 .vip_tab_li{ 298 .vip_tab_li{
286 - height: 100rpx;  
287 display: inline-flex; 299 display: inline-flex;
288 - align-items: center;  
289 - font-size: 30rpx;  
290 - color: #FFFFFF;  
291 - opacity: 0.6;  
292 - margin-right: 50rpx; 300 + font-size: 28rpx;
  301 + font-family: PingFang SC;
  302 + font-weight: 500;
  303 + color: #323232;
293 position: relative; 304 position: relative;
  305 + background-color: #fff;
  306 + border-top:1rpx solid #f3f4f6;
  307 + padding:30rpx;
294 &.active{ 308 &.active{
295 - opacity: 1;  
296 - 309 + color: #2D81FF;
297 &:after{ 310 &:after{
298 content: ''; 311 content: '';
299 position: absolute; 312 position: absolute;
300 - bottom: 0; 313 + bottom: 8rpx;
301 left: 50%; 314 left: 50%;
302 - margin-left: -18rpx;  
303 - width: 36rpx;  
304 - height: 6rpx;  
305 - background: #FFFFFF;  
306 - border-radius: 3rpx; 315 + background-image: url(@/static/imagesV2/icon23.png);
  316 + background-size: 100% 100%;
  317 + transform: translateX(-50%);
  318 + height: 24rpx;
  319 + width: 24rpx;
307 } 320 }
308 } 321 }
309 } 322 }
  323 +
310 .vio_sx{ 324 .vio_sx{
311 margin-top: 28rpx; 325 margin-top: 28rpx;
312 padding: 0 30rpx 30rpx; 326 padding: 0 30rpx 30rpx;
@@ -323,6 +337,7 @@ @@ -323,6 +337,7 @@
323 letter-spacing: 0; 337 letter-spacing: 0;
324 display: flex; 338 display: flex;
325 align-items: center; 339 align-items: center;
  340 + border-radius: 36rpx;
326 .icon{ 341 .icon{
327 font-size: 20rpx; 342 font-size: 20rpx;
328 margin-left: 5rpx; 343 margin-left: 5rpx;
@@ -333,86 +348,103 @@ @@ -333,86 +348,103 @@
333 height: 80rpx; 348 height: 80rpx;
334 background: #FFFFFF; 349 background: #FFFFFF;
335 border-radius: 10rpx; 350 border-radius: 10rpx;
336 - padding: 0 24rpx; 351 + padding: 0 30rpx;
337 display: flex; 352 display: flex;
338 align-items: center; 353 align-items: center;
  354 + border-radius: 36rpx;
  355 +
339 input{ 356 input{
340 flex: 1; 357 flex: 1;
341 min-width: 0; 358 min-width: 0;
342 - padding-right: 20rpx;  
343 font-size: 30rpx; 359 font-size: 30rpx;
344 } 360 }
345 .icon{ 361 .icon{
346 color: #B7BAC0; 362 color: #B7BAC0;
347 - font-size: 40rpx; 363 + font-size: 30rpx;
  364 + margin-right: 20rpx;
348 } 365 }
349 } 366 }
350 -.vio_list{  
351 - width: 100%; 367 +
  368 +.list {
352 padding: 0 30rpx 30rpx; 369 padding: 0 30rpx 30rpx;
353 - .vio_li{  
354 - width: 100%;  
355 - // min-height: 235rpx; 370 + .item {
356 background: #FFFFFF; 371 background: #FFFFFF;
357 - border-radius: 10rpx;  
358 - &+.vio_li{  
359 - margin-top: 20rpx; 372 + border-radius: 20rpx;
  373 + padding: 30rpx;
  374 + & + .item {
  375 + margin-top: 30rpx;
360 } 376 }
361 - .vio_li_msg{  
362 - width: 100%;  
363 - padding: 30rpx;  
364 - .vio_li_tit{  
365 - font-size: 28rpx;  
366 - color: #7D8087;  
367 - display: flex;  
368 - align-items: center;  
369 - margin-bottom: 20rpx;  
370 - .li_type{  
371 - width: 14rpx;  
372 - height: 14rpx;  
373 - background: #2D81FF;  
374 - border-radius: 50%;  
375 - margin-right: 10rpx;  
376 - }  
377 - .li_name{  
378 - font-size: 32rpx;  
379 - color: #545D71;  
380 - }  
381 - .li_tip{  
382 - font-size: 26rpx;  
383 - // color: #2D81FF;  
384 - // background: rgba(#2D81FF, .1);  
385 - padding: 2rpx 14rpx;  
386 - line-height: 30rpx;  
387 - margin-left: 10rpx;  
388 -  
389 - text{  
390 - // opacity: 1;  
391 - }  
392 - }  
393 - .identification{  
394 - font-size: 26rpx;  
395 - // color: #2D81FF;  
396 - // background: rgba(#2D81FF, .1);  
397 - padding: 2rpx 14rpx;  
398 - line-height: 30rpx;  
399 - margin-left: 10rpx; 377 + &-top {
  378 + display: flex;
  379 + align-items: center;
  380 + .tab {
  381 + border: 1px solid #2E86FE;
  382 + border-radius: 2rpx;
  383 + font-size: 22rpx;
  384 + font-family: PingFang SC;
  385 + font-weight: 400;
  386 + color: #2E86FE;
  387 + padding: 4rpx 10rpx;
  388 + margin-right: 10rpx;
  389 + & .bg {
  390 + border: 1px solid #FF7E00;
  391 + color: #FF7E00;
400 } 392 }
401 } 393 }
402 - .vio_li_inr{ 394 +
  395 +
  396 + .name {
403 font-size: 30rpx; 397 font-size: 30rpx;
404 - color: #545D71; 398 + font-family: PingFang SC;
  399 + font-weight: 500;
  400 + color: #323232;
  401 + flex: 1;
  402 + }
  403 + .state {
  404 + background: linear-gradient(0deg, #0AC49C 0%, #34D5AA 100%);
  405 + border-radius: 21rpx 21rpx 0 21rpx;
  406 + padding: 5rpx 20rpx;
  407 + font-size: 22rpx;
  408 + font-family: PingFang SC;
  409 + font-weight: 500;
  410 + color: #FFFFFF;
  411 + & .bg {
  412 + background: linear-gradient(0deg, #0088FF 0%, #2C9DFF 100%);
  413 + }
  414 + & .bg1 {
  415 + background: linear-gradient(0deg, #BEBEBE 0%, #AAAAAA 100%);
  416 + }
405 } 417 }
406 } 418 }
407 - .li_time{  
408 - width: 100%;  
409 - height: 80rpx;  
410 - border-top: 1rpx solid #eee;  
411 - font-size: 28rpx;  
412 - color: #545D71;  
413 - padding: 0 28rpx; 419 + &-title {
414 display: flex; 420 display: flex;
415 align-items: center; 421 align-items: center;
  422 + font-size: 26rpx;
  423 + font-family: PingFang SC;
  424 + font-weight: 400;
  425 + color: #646464;
  426 + margin-top: 30rpx;
  427 + .icon {
  428 + width: 12rpx;
  429 + height: 12rpx;
  430 + background: #2D81FF;
  431 + border-radius: 50%;
  432 + margin-right: 10rpx;
  433 + }
  434 + }
  435 + &-remarks {
  436 + font-size: 26rpx;
  437 + font-family: PingFang SC;
  438 + font-weight: 400;
  439 + color: #646464;
  440 + margin-top: 30rpx;
  441 + }
  442 + &-time {
  443 + font-size: 24rpx;
  444 + font-family: PingFang SC;
  445 + font-weight: 400;
  446 + color: #979797;
  447 + margin-top: 30rpx;
416 } 448 }
417 } 449 }
418 } 450 }
1 <template> 1 <template>
2 <view class="wrap_box"> 2 <view class="wrap_box">
3 - <!-- <uParse v-if="datas" :content="datas"></uParse> -->  
4 - <image class="ph_banner" src="/static/images/phb.png" mode="aspectFill"></image>  
5 - <view class="ph_box">  
6 - <view class="ph_tit dis_flex aic">  
7 - <view class="ph_d1">  
8 - 排名  
9 - </view>  
10 - <view class="ph_d2">  
11 - 班主任  
12 - </view>  
13 - <view class="ph_d3">  
14 - 总星级  
15 - </view>  
16 - </view>  
17 - <u-empty v-if="datas.length==0"  
18 - mode="data"  
19 - text="暂无数据"  
20 - icon="/static/images/tch/img_blank.png"  
21 - >  
22 - </u-empty>  
23 - <view v-for="(item,index) in datas" class="ph_li">  
24 - <view class="ph_d1">  
25 - <image v-if="item.key==1" src="/static/images/ph.png" mode="aspectFit"></image>  
26 - <image v-else-if="item.key==2" src="/static/images/ph2.png" mode="aspectFit"></image>  
27 - <image v-else-if="item.key==3" src="/static/images/ph3.png" mode="aspectFit"></image>  
28 - <text v-else>{{item.key}}</text>  
29 - </view>  
30 - <view class="ph_d2">  
31 - {{item.nick}}  
32 - </view>  
33 - <view class="ph_d3">  
34 - {{item.start}}分  
35 - </view>  
36 - </view>  
37 - <view class="ph_li ph_li_b">  
38 - <view class="ph_d1">  
39 - <image v-if="mydata.key==1" src="/static/images/ph.png" mode="aspectFit"></image>  
40 - <image v-else-if="mydata.key==2" src="/static/images/ph2.png" mode="aspectFit"></image>  
41 - <image v-else-if="mydata.key==3" src="/static/images/ph3.png" mode="aspectFit"></image>  
42 - <text v-else>{{mydata.key}}</text>  
43 - <!-- <text>{{mydata.key}}</text> -->  
44 - </view>  
45 - <view class="ph_d2">  
46 - {{mydata.nick}}<text>本人</text>  
47 - </view>  
48 - <view class="ph_d3">  
49 - {{mydata.start}}分 3 + <CustomReturn title="星级排行榜" color="#fff" :bgColor="bgColor">
  4 +
  5 + </CustomReturn>
  6 + <view class="bg-img">
  7 + <image src="/static/imagesV2/icon18.png" mode="aspectFill"></image>
  8 + </view>
  9 +
  10 + <PaddingTopB>
  11 +
  12 + <view class="main">
  13 +
  14 + <view class="card">
  15 + <view class="head">
  16 + <view class="icon">
  17 + <image src="/static/imagesV2/icon19.png" mode="aspectFill"></image>
  18 + </view>
  19 + <view class="title">
  20 + 班主任排名
  21 + </view>
  22 + <view class="icon">
  23 + <image src="/static/imagesV2/icon19s.png" mode="aspectFill"></image>
  24 + </view>
  25 + </view>
  26 +
  27 + <view class="list">
  28 + <view class="item" v-for="(item,index) in datas">
  29 + <view class="item-index">
  30 + <image v-if="item.key==1" src="/static/imagesV2/icon20.png" mode="aspectFit"></image>
  31 + <image v-else-if="item.key==2" src="/static/imagesV2/icon21.png" mode="aspectFit"></image>
  32 + <image v-else-if="item.key==3" src="/static/imagesV2/icon22.png" mode="aspectFit"></image>
  33 + <text v-else>{{item.key}}</text>
  34 + </view>
  35 + <view class="item-title">
  36 + {{item.nick}}
  37 + </view>
  38 + <view class="item-val">
  39 + {{item.start}}
  40 + </view>
  41 + <view class="item-unit">
  42 +
  43 + </view>
  44 + </view>
  45 + <u-empty
  46 + v-if="datas.length==0"
  47 + mode="data"
  48 + text="暂无数据"
  49 + icon="/static/images/tch/img_blank.png"
  50 + >
  51 + </u-empty>
  52 + </view>
  53 +
  54 + <view class="footer">
  55 + <view class="item">
  56 + <view class="item-index">
  57 + <image v-if="mydata.key==1" src="/static/imagesV2/icon20.png" mode="aspectFit"></image>
  58 + <image v-else-if="mydata.key==2" src="/static/imagesV2/icon21.png" mode="aspectFit"></image>
  59 + <image v-else-if="mydata.key==3" src="/static/imagesV2/icon22.png" mode="aspectFit"></image>
  60 + <text v-else>{{mydata.key}}</text>
  61 + </view>
  62 + <view class="item-title">
  63 + {{mydata.nick || ''}}
  64 + </view>
  65 + <view class="item-tabs">
  66 + <view class="tab">
  67 + 本人
  68 + </view>
  69 + </view>
  70 + <view class="item-val">
  71 + {{mydata.start || ''}}
  72 + </view>
  73 + <view class="item-unit">
  74 +
  75 + </view>
  76 + </view>
  77 + </view>
50 </view> 78 </view>
  79 +
  80 +
  81 +
  82 +
51 </view> 83 </view>
52 - </view>  
53 - <!-- 阻止滑动 -->  
54 - <!-- <view @touchmove.stop.prevent='test'></view> --> 84 +
  85 + </PaddingTopB>
  86 +
55 </view> 87 </view>
56 </template> 88 </template>
57 89
@@ -61,10 +93,17 @@ @@ -61,10 +93,17 @@
61 mapState, 93 mapState,
62 mapMutations 94 mapMutations
63 } from 'vuex' 95 } from 'vuex'
  96 + import CustomReturn from "@/components/CustomReturn/index.vue"
  97 + import PaddingTopB from "@/components/PaddingTopB/index.vue"
64 var that 98 var that
65 export default { 99 export default {
  100 + components: {
  101 + CustomReturn,
  102 + PaddingTopB
  103 + },
66 data() { 104 data() {
67 return { 105 return {
  106 + bgColor: 'transparent',
68 options:'', 107 options:'',
69 datas:'', 108 datas:'',
70 mydata:'' 109 mydata:''
@@ -73,6 +112,13 @@ @@ -73,6 +112,13 @@
73 computed: { 112 computed: {
74 ...mapState(['hasLogin', 'forcedLogin', 'userName', 'userinfo','nowtime']), 113 ...mapState(['hasLogin', 'forcedLogin', 'userName', 'userinfo','nowtime']),
75 }, 114 },
  115 + onPageScroll(e) {
  116 + if(e.scrollTop > 0 ) {
  117 + this.bgColor = '#3384fc'
  118 + }else {
  119 + this.bgColor = 'transparent'
  120 + }
  121 + },
76 onLoad(e) { 122 onLoad(e) {
77 that=this 123 that=this
78 that.options=e||{} 124 that.options=e||{}
@@ -167,87 +213,114 @@ @@ -167,87 +213,114 @@
167 // #ifdef H5 213 // #ifdef H5
168 min-height: calc(100vh - 44px); 214 min-height: calc(100vh - 44px);
169 // #endif 215 // #endif
170 - background: #F8F8F8; 216 + background: #3384fc;
171 } 217 }
172 -.ph_banner{ 218 +.bg-img {
  219 + height: 100vh;
  220 + position: absolute;
173 width: 100%; 221 width: 100%;
174 - height: 340rpx;  
175 - position: relative;  
176 - z-index: 1;  
177 - margin-bottom: -40rpx; 222 + top: 0;
178 } 223 }
179 -.ph_box{  
180 - position: relative;  
181 - z-index: 2;  
182 - background: #FFFFFF;  
183 - border-radius: 30rpx 30rpx 0 0;  
184 - padding: 30rpx 30rpx 130rpx;  
185 - min-height: calc(100vh - 300rpx);  
186 - // #ifdef H5  
187 - min-height: calc(100vh - 44px - 300rpx);  
188 - // #endif  
189 -}  
190 -.ph_tit{  
191 - font-size: 28rpx;  
192 - color: #929399;  
193 - height: 60rpx;  
194 - .ph_d1{  
195 - width: 60rpx;  
196 - margin-right: 40rpx;  
197 - }  
198 - .ph_d2{  
199 - flex: 1;  
200 - margin-right: 40rpx;  
201 - text-align: left;  
202 - }  
203 - .ph_d3{  
204 - text-align: right;  
205 - } 224 +.main {
  225 + width: 100%;
  226 + padding: 25rpx 25rpx 135rpx;
  227 + box-sizing: border-box;
  228 + margin-top: 250rpx;
206 } 229 }
207 -.ph_li{  
208 - font-size: 32rpx;  
209 - color: #545C71;  
210 - height: 120rpx;  
211 - display: flex;  
212 - align-items: center;  
213 -  
214 - .ph_d1{  
215 - width: 60rpx;  
216 - margin-right: 40rpx; 230 +
  231 +.card {
  232 + background-color: #fff;
  233 + border-radius: 20px;
  234 + overflow: hidden;
  235 + .head {
217 display: flex; 236 display: flex;
218 align-items: center; 237 align-items: center;
219 justify-content: center; 238 justify-content: center;
220 - font-size: 30rpx;  
221 - image{  
222 - width: 60rpx;  
223 - height: 60rpx; 239 + padding: 50rpx 0 30rpx;
  240 + background: linear-gradient(to bottom, #AEC7FF 0%, #FFFFFF 100%);
  241 + .icon {
  242 + width: 40rpx;
  243 + height: 40rpx;
  244 + }
  245 + .title {
  246 + font-size: 32rpx;
  247 + font-family: PingFang SC;
  248 + font-weight: bold;
  249 + color: #323232;
  250 + margin: 0 20rpx;
224 } 251 }
225 } 252 }
226 - .ph_d2{  
227 - flex: 1;  
228 - margin-right: 40rpx;  
229 - text-align: left;  
230 - text{  
231 - font-size: 28rpx;  
232 - color: #2D81FF;  
233 - margin-left: 10rpx;  
234 - padding: 5rpx 14rpx;  
235 - background: rgba(45, 129, 255, .1);  
236 - border-radius: 10rpx; 253 +
  254 + .list,
  255 + .footer{
  256 + padding: 0 30rpx;
  257 + .item {
  258 + display: flex;
  259 + align-items: center;
  260 + font-family: PingFang SC;
  261 + padding: 30rpx 0;
  262 + border-bottom: 1px solid #FAFBFA;
  263 + padding: 30rpx 0;
  264 + &:last-child {
  265 + border: 0;
  266 + }
  267 + &-index {
  268 + width: 50rpx;
  269 + height: 50rpx;
  270 + font-size: 30rpx;
  271 + font-weight: bold;
  272 + color: #979797;
  273 + display: flex;
  274 + align-items: center;
  275 + justify-content: center;
  276 + }
  277 + &-title {
  278 + flex: 1;
  279 + margin: 0 20rpx;
  280 + font-size: 28rpx;
  281 + font-weight: 500;
  282 + color: #323232;
  283 + }
  284 + &-val {
  285 + font-size: 32rpx;
  286 + font-weight: bold;
  287 + color: #2D81FF;
  288 + }
  289 + &-unit {
  290 + font-size: 26rpx;
  291 + color: #646464;
  292 + }
237 } 293 }
238 } 294 }
239 - .ph_d3{  
240 - text-align: right; 295 +
  296 + .footer {
  297 + position: fixed;
  298 + bottom: 0;
  299 + left: 0;
  300 + width: 100%;
  301 + background-color: #fff;
  302 + padding: 0 55rpx;
  303 + box-sizing: border-box;
  304 + .item-title {
  305 + flex: unset;
  306 + }
  307 + .item-tabs {
  308 + flex: 1;
  309 + .tab {
  310 + width: 80rpx;
  311 + height: 44rpx;
  312 + text-align: center;
  313 + line-height: 44rpx;
  314 + font-size: 26rpx;
  315 + font-family: PingFang SC;
  316 + font-weight: 400;
  317 + color: #448EFE;
  318 + background-color: rgba(49, 132, 255, 0.08);
  319 + border-radius: 5rpx;
  320 + }
  321 + }
241 } 322 }
242 } 323 }
243 -.ph_li_b{  
244 - position: fixed;  
245 - bottom: 0;  
246 - z-index: 900;  
247 - left: 0;  
248 - width: 100%;  
249 - background: #fff;  
250 - padding: 0 30rpx;  
251 - box-shadow: 0px 3rpx 8px 0px rgba(207, 207, 207, 0.5);  
252 -} 324 +
253 </style> 325 </style>
  326 +
1 <template> 1 <template>
2 <view class="wrap_box"> 2 <view class="wrap_box">
3 - <!-- <uParse v-if="datas" :content="datas"></uParse> -->  
4 - <view class="kq_box">  
5 - <view class="kq_bg dis_flex aic ju_c">  
6 - <image class="kq_bgimg" src="/static/images/tbbj.png" mode="widthFix"></image>  
7 - <view class="">  
8 - <text>{{all_star}}</text>分  
9 - </view>  
10 - </view>  
11 - <view class="pf_num">  
12 - 共{{total}}人评价  
13 - </view>  
14 - <view class="kq_list_box">  
15 - <view class="kq_list">  
16 - <u-empty v-if="datas.length==0"  
17 - mode="data"  
18 - text="暂无数据"  
19 - icon="/static/images/tch/img_blank.png"  
20 - >  
21 - </u-empty>  
22 - <view v-for="(item,index) in datas" class="kq_li">  
23 - <view class="pj_tit">  
24 - 负责任程度  
25 - </view>  
26 - <view class="pj_star dis_flex aic" style="border-bottom: 0;">  
27 - <view class="flex_1 dis_flex aic">  
28 - <text class="icon icon-star" :class="item.star>index1?'active':''" v-for="(item1,index1) in 10"></text>  
29 - </view>  
30 - <view class="star_text">  
31 - <!-- {{active>7?'优秀':active>5?'良好':active>0?'一般':''}} -->  
32 - {{item.star>7?'优秀':item.star>5?'良好':'一般'}}  
33 - </view>  
34 - </view>  
35 - <view class="pj_tit">  
36 - 专业能力(答疑、讲解、课堂组织能力)  
37 - </view>  
38 - <view class="pj_star dis_flex aic">  
39 - <view class="flex_1 dis_flex aic">  
40 - <text class="icon icon-star" :class="item.star_o>index1?'active':''" v-for="(item1,index1) in 10"></text>  
41 - </view>  
42 - <view class="star_text">  
43 - <!-- {{active2>7?'优秀':active2>5?'良好':active2>0?'一般':''}} -->  
44 - {{item.star_o>7?'优秀':item.star_o>5?'良好':'一般'}}  
45 - </view>  
46 - </view>  
47 - <view class="other_box">  
48 - <text class="other_tit">其他评价及建议:</text><text>{{item.content}}</text>  
49 - </view> </view>  
50 - </view>  
51 - </view> 3 + <view class="head">
  4 + <view class="head-bg">
  5 + <image src="/static/imagesV2/tch_index/bg2.png"></image>
  6 + </view>
  7 +
  8 + <view class="head-box">
  9 + <view class="head-item">
  10 + <view class="head-item_content">
  11 + {{all_star}}
  12 + </view>
  13 + <view class="head-item_label">
  14 + 班主任评分(分)
  15 + </view>
  16 + </view>
  17 + <view class="head-line">
  18 +
  19 + </view>
  20 + <view class="head-item">
  21 + <view class="head-item_content">
  22 + {{total}}
  23 + </view>
  24 + <view class="head-item_label">
  25 + 评价人数(人)
  26 + </view>
  27 + </view>
  28 + </view>
  29 +
  30 + </view>
  31 +
  32 +
  33 + <view class="card" v-for="(item,index) in datas" :key="index">
  34 + <view class="cell">
  35 + <view class="cell-label">
  36 + 专业能力(答疑、讲解、课堂组织能力)
  37 + </view>
  38 + <view class="cell-rate">
  39 + <u-rate
  40 + :count="rate.count"
  41 + :activeColor="rate.activeColor"
  42 + :inactiveColor="rate.inactiveColor"
  43 + :value="item.star_o"
  44 + readonly>
  45 + </u-rate>
  46 + <text class="cell-rate_text">
  47 + {{item.star_o>7?'优秀':item.star_o>5?'良好':'一般'}}
  48 + </text>
  49 + </view>
  50 + </view>
  51 +
  52 + <view class="cell">
  53 + <view class="cell-label">
  54 + 负责任程度
  55 + </view>
  56 + <view class="cell-rate">
  57 + <u-rate
  58 + :count="rate.count"
  59 + :activeColor="rate.activeColor"
  60 + :inactiveColor="rate.inactiveColor"
  61 + :value="item.star"
  62 + readonly>
  63 + </u-rate>
  64 + <text class="cell-rate_text">
  65 + {{item.star>7?'优秀':item.star>5?'良好':'一般'}}
  66 + </text>
  67 + </view>
  68 + </view>
  69 +
  70 +
  71 + <view class="cell">
  72 + <view class="cell-content">
  73 + <text class="label">其他评价及建议:</text>
  74 + {{item.content}}
  75 + </view>
  76 + </view>
  77 +
52 </view> 78 </view>
53 79
54 - <!-- 阻止滑动 -->  
55 - <!-- <view @touchmove.stop.prevent='test'></view> --> 80 + <u-empty
  81 + v-if="datas.length==0"
  82 + mode="data"
  83 + text="暂无数据"
  84 + icon="/static/images/tch/img_blank.png"
  85 + />
  86 +
56 </view> 87 </view>
57 </template> 88 </template>
58 89
@@ -67,28 +98,33 @@ @@ -67,28 +98,33 @@
67 data() { 98 data() {
68 return { 99 return {
69 options:'', 100 options:'',
70 - datas:[  
71 - {  
72 - fz:2,  
73 - zy:3  
74 - },  
75 - {  
76 - fz:8,  
77 - zy:9  
78 - },  
79 - {  
80 - fz:5,  
81 - zy:6  
82 - },  
83 - {  
84 - fz:7,  
85 - zy:7  
86 - },  
87 - ],  
88 - allnum:'',  
89 - page:1,  
90 - all_star:0,  
91 - total:0 101 + datas:[
  102 + {
  103 + fz:2,
  104 + zy:3
  105 + },
  106 + {
  107 + fz:8,
  108 + zy:9
  109 + },
  110 + {
  111 + fz:5,
  112 + zy:6
  113 + },
  114 + {
  115 + fz:7,
  116 + zy:7
  117 + },
  118 + ],
  119 + allnum:'',
  120 + page:1,
  121 + all_star:0,
  122 + total:0,
  123 + rate: {
  124 + count: 10,
  125 + activeColor: '#FC7D01',
  126 + inactiveColor: '#D8D8D8'
  127 + }
92 } 128 }
93 }, 129 },
94 computed: { 130 computed: {
@@ -103,81 +139,81 @@ @@ -103,81 +139,81 @@
103 }, 139 },
104 onShow() { 140 onShow() {
105 that.onRetry() 141 that.onRetry()
106 - },  
107 - onReachBottom() {  
108 - that.getdata() 142 + },
  143 + onReachBottom() {
  144 + that.getdata()
109 }, 145 },
110 methods: { 146 methods: {
111 // ...mapMutations(['wxshouquan','login']), 147 // ...mapMutations(['wxshouquan','login']),
112 test(){}, 148 test(){},
113 - onRetry(){  
114 - that.page=1  
115 - that.datas = []  
116 - that.getdata()  
117 - },  
118 - getdata() {  
119 -  
120 - var jkurl="/content/list"  
121 - var datas={  
122 - page:that.page,  
123 - }  
124 - // if(that.data_last == true){  
125 - // return  
126 - // }  
127 - if (that.btnkg == 1) {  
128 - return  
129 - } else {  
130 - that.btnkg = 1  
131 - }  
132 - var page_now=that.page  
133 - that.$service.P_post(jkurl, datas).then(res => {  
134 - that.btnkg = 0  
135 - console.log(res)  
136 - if (res.code == 1) {  
137 - var datas = res.data  
138 - console.log(typeof datas)  
139 -  
140 - if (typeof datas == 'string') {  
141 - datas = JSON.parse(datas)  
142 - }  
143 - that.all_star=datas.all_star||0  
144 - that.total=datas.total||0  
145 - if (page_now == 1) {  
146 -  
147 - that.datas = datas.data  
148 -  
149 - } else {  
150 - if (datas.data.length == 0) {  
151 - that.data_last = true  
152 - return  
153 - }  
154 - that.data_last = false  
155 - that.datas = that.datas.concat(datas.data)  
156 - }  
157 - // that.allnum=datas.allnum  
158 - that.page++  
159 -  
160 - } else {  
161 - if (res.msg) {  
162 - uni.showToast({  
163 - icon: 'none',  
164 - title: res.msg  
165 - })  
166 - } else {  
167 - uni.showToast({  
168 - icon: 'none',  
169 - title: '操作失败'  
170 - })  
171 - }  
172 - }  
173 - }).catch(e => {  
174 - that.btnkg = 0  
175 - console.log(e)  
176 - uni.showToast({  
177 - icon: 'none',  
178 - title: '操作失败'  
179 - })  
180 - }) 149 + onRetry(){
  150 + that.page=1
  151 + that.datas = []
  152 + that.getdata()
  153 + },
  154 + getdata() {
  155 +
  156 + var jkurl="/content/list"
  157 + var datas={
  158 + page:that.page,
  159 + }
  160 + // if(that.data_last == true){
  161 + // return
  162 + // }
  163 + if (that.btnkg == 1) {
  164 + return
  165 + } else {
  166 + that.btnkg = 1
  167 + }
  168 + var page_now=that.page
  169 + that.$service.P_post(jkurl, datas).then(res => {
  170 + that.btnkg = 0
  171 + console.log(res)
  172 + if (res.code == 1) {
  173 + var datas = res.data
  174 + console.log(typeof datas)
  175 +
  176 + if (typeof datas == 'string') {
  177 + datas = JSON.parse(datas)
  178 + }
  179 + that.all_star=datas.all_star||0
  180 + that.total=datas.total||0
  181 + if (page_now == 1) {
  182 +
  183 + that.datas = datas.data
  184 +
  185 + } else {
  186 + if (datas.data.length == 0) {
  187 + that.data_last = true
  188 + return
  189 + }
  190 + that.data_last = false
  191 + that.datas = that.datas.concat(datas.data)
  192 + }
  193 + // that.allnum=datas.allnum
  194 + that.page++
  195 +
  196 + } else {
  197 + if (res.msg) {
  198 + uni.showToast({
  199 + icon: 'none',
  200 + title: res.msg
  201 + })
  202 + } else {
  203 + uni.showToast({
  204 + icon: 'none',
  205 + title: '操作失败'
  206 + })
  207 + }
  208 + }
  209 + }).catch(e => {
  210 + that.btnkg = 0
  211 + console.log(e)
  212 + uni.showToast({
  213 + icon: 'none',
  214 + title: '操作失败'
  215 + })
  216 + })
181 }, 217 },
182 getimg(img){ 218 getimg(img){
183 return service.getimg(img) 219 return service.getimg(img)
@@ -208,111 +244,97 @@ @@ -208,111 +244,97 @@
208 <style lang="scss" scoped> 244 <style lang="scss" scoped>
209 .wrap_box{ 245 .wrap_box{
210 width: 100%; 246 width: 100%;
211 - // padding: 30rpx;  
212 - min-height: 100vh;  
213 - // #ifdef H5  
214 - min-height: calc(100vh - 44px);  
215 - // #endif 247 + padding: 25rpx;
  248 + min-height: 100vh;
  249 + // #ifdef H5
  250 + min-height: calc(100vh - 44px);
  251 + // #endif
216 background: #F8F8F8; 252 background: #F8F8F8;
217 -}  
218 -.kq_box{  
219 - width: 100%;  
220 - position: relative;  
221 - .kq_bg{  
222 - position: relative;  
223 - width: 100%;  
224 - height: 250rpx;  
225 - font-size: 32rpx;  
226 - color: #fff;  
227 - .kq_bgimg{  
228 - position: absolute;  
229 - top: 0;  
230 - z-index: 1;  
231 - width: 100%;  
232 - height: 250rpx;  
233 - font-size: 32rpx;  
234 - color: #fff;  
235 -  
236 -  
237 - }  
238 - view{  
239 - position: relative;  
240 - top: -40rpx;  
241 - z-index: 2;  
242 - text{  
243 - font-size: 72rpx;  
244 - font-weight: bold;  
245 - }  
246 - }  
247 - }  
248 -}  
249 -.kq_list_box{  
250 - width: 100%;  
251 - padding: 30rpx;  
252 - .kq_list{  
253 - width: 100%;  
254 - .kq_li{  
255 - width: 100%;  
256 - padding: 28rpx;  
257 - min-height: 150rpx;  
258 - background: #fff;  
259 - border-radius: 10rpx;  
260 - &+.kq_li{  
261 - // border-top: 1px solid #f8f8f8;  
262 - margin-top: 30rpx;  
263 - }  
264 - .pj_tit{  
265 - font-size: 28rpx;  
266 - font-family: PingFang SC;  
267 - font-weight: 400;  
268 - color: #A9B1C0;  
269 - margin-bottom: 20rpx;  
270 - &.pj_tit1{  
271 - padding-bottom: 34rpx;  
272 - border-bottom: 1px solid #eee;  
273 - }  
274 - }  
275 - .pj_star{  
276 - padding-bottom: 34rpx;  
277 - border-bottom: 1px solid #eee;  
278 - // margin-bottom: 14rpx;  
279 - padding-right: 60rpx;  
280 - text{  
281 - color: #EEEEEE;  
282 - font-size: 36rpx;  
283 - &+text{  
284 - margin-left: 13rpx;  
285 - }  
286 - &.active{  
287 - color: #FF9A18;  
288 - }  
289 - }  
290 - .star_text{  
291 - font-size: 28rpx;  
292 - font-family: PingFang SC;  
293 - font-weight: 400;  
294 - color: #A9B1C0;  
295 - }  
296 - }  
297 - .other_box{  
298 - margin-top: 30rpx;  
299 - font-size: 28rpx;  
300 - font-family: PingFang SC;  
301 - font-weight: 400;  
302 - color: #545D71;  
303 - .other_tit{  
304 - color: #A9B1C0;  
305 - }  
306 - }  
307 - }  
308 - }  
309 -}  
310 -.pf_num{  
311 - font-size: 28rpx;  
312 - font-family: PingFang SC;  
313 - font-weight: 500;  
314 - color: #333333;  
315 - padding: 20rpx 30rpx 0;  
316 - margin-top: -10rpx;  
317 } 253 }
  254 +
  255 +.head {
  256 + position: relative;
  257 + height: 200rpx;
  258 +
  259 + .head-bg {
  260 + width: 100%;
  261 + height: 100%;
  262 + }
  263 + &-box {
  264 + position: absolute;
  265 + top: 0;
  266 + left: 0;
  267 + right: 0;
  268 + bottom: 0;
  269 + display: flex;
  270 + align-items: center;
  271 + }
  272 + &-item {
  273 + flex: 1;
  274 + text-align: center;
  275 + &_label {
  276 + font-size: 26rpx;
  277 + font-family: PingFang SC;
  278 + font-weight: 500;
  279 + color: #FFFFFF;
  280 + }
  281 + &_content {
  282 + font-size: 48rpx;
  283 + font-family: PingFang SC;
  284 + font-weight: bold;
  285 + color: #FFFFFF;
  286 + }
  287 + }
  288 + &-line {
  289 + background: #F2F2F2;
  290 + opacity: 0.2;
  291 + width: 1px;
  292 + height: 50rpx;
  293 + }
  294 +}
  295 +
  296 +.card {
  297 + background: #fff;
  298 + border-radius: 20rpx;
  299 + padding: 30rpx;
  300 + margin-top: 20rpx;
  301 + .cell {
  302 + & + .cell {
  303 + margin-top: 20rpx;
  304 + }
  305 + &-label {
  306 + font-size: 24rpx;
  307 + font-family: PingFang SC;
  308 + font-weight: 500;
  309 + color: #323232;
  310 + }
  311 + &-rate {
  312 + margin-top: 20rpx;
  313 + display: flex;
  314 + align-items: center;
  315 + &_text {
  316 + font-size: 24rpx;
  317 + font-family: PingFang SC;
  318 + font-weight: 500;
  319 + color: #FC5101;
  320 + margin-left: 40rpx;
  321 + }
  322 + }
  323 + &-content {
  324 + background: #F5F6F8;
  325 + border-radius: 20rpx;
  326 + padding: 20rpx;
  327 + font-size: 26rpx;
  328 + font-family: PingFang SC;
  329 + font-weight: 500;
  330 + color: #323232;
  331 + .label {
  332 + color: #979797;
  333 + }
  334 + }
  335 + }
  336 +
  337 +}
  338 +
  339 +
318 </style> 340 </style>