index.vue 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836
  1. <template>
  2. <view class="index">
  3. <u-navbar :is-back="false" :border-bottom="false" title-color="#333333" back-icon-color="#ffffff">
  4. <view class="slot-wrap">
  5. <image src="/static/logo2.png"></image>
  6. </view>
  7. </u-navbar>
  8. <u-swiper height="320" border-radius="0" :list="list" @change="e => current = e.current" :autoplay="false"></u-swiper>
  9. <view class="content">
  10. <view class="notice" v-if="infoNums">
  11. <view class="notice__content">
  12. <image src="/static/icon/msg_icon1.png" class="icon"></image>
  13. <view class="text">
  14. 您有{{infoNums}}条新的通知
  15. </view>
  16. <view class="btn" @click="jumpPage">立即查看</view>
  17. </view>
  18. </view>
  19. <view>
  20. <!-- 日历-->
  21. <view class="calendar_card">
  22. <view class="card_box">
  23. <u-row gutter="16">
  24. <u-col span="11" v-if="false">
  25. <view>
  26. <text class="t1">距离</text>
  27. <text class="t2">二级建造师</text>
  28. <text class="t1">考试</text>
  29. <text class="t3">365</text>
  30. <text class="t1">天,继续加油哦!</text>
  31. </view>
  32. </u-col>
  33. <u-col offset="11" span="1">
  34. <view @click="jumpPlan"><image src="/static/more.png" class="img_more"></image></view>
  35. </u-col>
  36. </u-row>
  37. </view>
  38. <u-line color="#EEEEEE" />
  39. <view style="width: 100%;display: flex;justify-content:center;margin-top: 20rpx;">
  40. <view v-for="(item, index) in date" :key="index" class="card_date">{{ item }}</view>
  41. </view>
  42. <view style="width: 100%;display: flex;justify-content:center;margin-top: 40rpx;">
  43. <view v-for="(item, index) in date_num" :key="index" class="date_num">
  44. <view v-if="item.color == 0" class="date_num_color0" v-show="item.date > 0">
  45. {{ item.date }}
  46. <view v-if="item.note > 0" class="date_note">{{ item.note }}</view>
  47. <view v-if="item.dot" class="date_dot"></view>
  48. </view>
  49. <view v-if="item.color == 1" class="date_num_color1">
  50. {{ item.date }}
  51. <view v-if="item.note > 0" class="date_note">{{ item.note }}</view>
  52. <view v-if="item.dot" class="date_dot"></view>
  53. </view>
  54. <view v-if="item.color == 2" class="date_num_color2">
  55. {{ item.date }}
  56. <view v-if="item.note > 0" class="date_note">{{ item.note }}</view>
  57. <view v-if="item.dot" class="date_dot"></view>
  58. </view>
  59. <view v-if="item.color == 3" class="date_num_color3">
  60. {{ item.date }}
  61. <view v-if="item.note > 0" class="date_note">{{ item.note }}</view>
  62. <view v-if="item.dot" class="date_dot"></view>
  63. </view>
  64. </view>
  65. </view>
  66. <view style="width: 100%;margin-top: 20rpx;" v-if="workList.length > 0">
  67. <u-row gutter="16">
  68. <u-col span="2" text-align="center">
  69. <view><image src="/static/left.png" class="arr-icon" @click="preveItem"></image></view>
  70. </u-col>
  71. <u-col span="8" text-align="center">
  72. <view class="course_title" @click="jumpGoodsDetail(goodsItem)">{{ goodsItem.goodsName }}</view>
  73. </u-col>
  74. <u-col span="2" text-align="center">
  75. <view><image src="/static/right.png" class="arr-icon" @click="nextItem"></image></view>
  76. </u-col>
  77. </u-row>
  78. </view>
  79. </view>
  80. </view>
  81. <u-tabs class="tabs" :current="tabCurrent" @change="tab" :list="menu" :activeStyle="{fontSize:'36rpx'}" :inactiveStyle="{color:'#EAEEF1',fontSize:'30rpx'}" sticky></u-tabs>
  82. <view class="course-list" v-show="tabCurrent==0">
  83. <navigator hover-class="none" class="item" v-for="(item,index) in list1" :key="index" :url="'/pages3/course/detail?id='+item.goodsId">
  84. <view class="img">
  85. <image :src="$method.splitImgHost(item.coverUrl, true)"></image>
  86. <view class="time">{{item.year?item.year:''}}</view>
  87. </view>
  88. <view class="text">
  89. <view class="title">{{item.goodsName}}</view>
  90. <view class="desc">
  91. <view class="left">
  92. {{item.classHours}}
  93. <text>学时</text>
  94. </view>
  95. <view class="right">¥ {{item.standPrice}}</view>
  96. </view>
  97. </view>
  98. </navigator>
  99. </view>
  100. <view class="course-list" v-show="tabCurrent==1">
  101. <navigator hover-class="none" class="item" v-for="(item,index) in list2" :key="index" :url="'/pages2/bank/detail?id='+item.goodsId">
  102. <view class="img">
  103. <image :src="$method.splitImgHost(item.coverUrl, true)"></image>
  104. <view class="time">{{item.year?item.year:''}}</view>
  105. </view>
  106. <view class="text">
  107. <view class="title">{{item.goodsName}}</view>
  108. <view class="desc">
  109. <view class="left" v-if="false">
  110. {{item.classHours}}
  111. <text>学时</text>
  112. </view>
  113. <view class="right">¥ {{item.standPrice}}</view>
  114. </view>
  115. </view>
  116. </navigator>
  117. </view>
  118. </view>
  119. </view>
  120. </template>
  121. <script>
  122. import { mapGetters } from 'vuex';
  123. export default {
  124. components: {},
  125. data() {
  126. return {
  127. infoNums:0,
  128. list:[
  129. 'https://file.xyyxt.net/oss/images/file/20220111.jpg',
  130. ],
  131. tabCurrent:0,
  132. date:['日','一','二','三','四','五','六'],
  133. date_num: [],
  134. current:0,
  135. indicatorDots: true,
  136. autoplay: true,
  137. interval: 2000,
  138. duration: 500,
  139. menu: [{
  140. name: '推荐课程',
  141. }, {
  142. name: '推荐题库',
  143. }],
  144. goodsIndex: 0,
  145. goodsItem: 0,
  146. workList: [],
  147. workTextList: [],
  148. planGoodsList: [],
  149. paramList: [
  150. {
  151. pageNum: 1,
  152. pageSize: 10,
  153. total: 0,
  154. showStatus: 0,
  155. goodsType:1
  156. },
  157. {
  158. pageNum: 1,
  159. pageSize: 10,
  160. total: 0,
  161. showStatus: 0,
  162. goodsType:2
  163. }
  164. ],
  165. list1: [],
  166. list2: [],
  167. isLogin:false,
  168. isOld:false
  169. };
  170. },
  171. onPullDownRefresh() {},
  172. onLoad(option) {
  173. this.init()
  174. this.courseList();
  175. this.bankList();
  176. },
  177. onShow() {
  178. if (uni.getStorageSync('updateHome')|| !this.isOld){
  179. this.isOld = true;
  180. this.init()
  181. uni.removeStorageSync('updateHome'); //消费首页刷新事件
  182. }
  183. if(this.isLogin){
  184. this.$store.state.allowLoading = false;
  185. this.$api.getinfoAttached().then(res => {
  186. if(res.data.code ===200){
  187. this.infoNums = res.data.data.informSum
  188. const nums = res.data.data.informSum + res.data.data.orderSum + res.data.data.periodSum + res.data.data.planSum + res.data.data.subscribeSum;
  189. this.$store.commit('tabNum', nums);
  190. }
  191. })
  192. this.$store.state.allowLoading = true;
  193. }else{
  194. this.$store.commit('tabNum', 0);
  195. }
  196. },
  197. onShareAppMessage(res) {
  198. var self = this;
  199. return {
  200. title: '中正',
  201. path: `/pages/index/index?inviteCode=` + userInfo == null ? '' : userInfo.userAccount
  202. };
  203. },
  204. methods: {
  205. jumpPage(){
  206. this.$navTo.togo('/pages2/msg/index')
  207. },
  208. //课程
  209. courseList() {
  210. var self = this;
  211. var param = this.paramList[0];
  212. this.$api.goodsList(param).then(res => {
  213. self.paramList[0].total = res.data.total;
  214. self.list1.push.apply(self.list1, res.data.rows);
  215. if (self.list1.length === res.data.total) {
  216. self.paramList[0].showStatus = true;
  217. }
  218. });
  219. },
  220. //题库
  221. bankList() {
  222. var self = this;
  223. var param = this.paramList[1];
  224. this.$api.goodsList(param).then(res => {
  225. self.paramList[1].total = res.data.total;
  226. self.list2.push.apply(self.list2, res.data.rows);
  227. if (self.list2.length === res.data.total) {
  228. self.paramList[1].showStatus = true;
  229. }
  230. });
  231. },
  232. jumpGoodsDetail(item){
  233. this.$navTo.togo('/pages2/wd/course', {
  234. id: item.goodsId,
  235. gid:item.gradeId
  236. });
  237. },
  238. preveItem() {
  239. if (this.goodsIndex > 0) {
  240. this.goodsIndex = this.goodsIndex - 1;
  241. this.planGoodsList =this.workList[this.goodsIndex].goodsVos
  242. this.goodsItem = this.planGoodsList[0];
  243. this.dealRL(this.workList[this.goodsIndex].calendarStudyVo)
  244. }
  245. },
  246. nextItem() {
  247. if (this.goodsIndex < this.workList.length - 1) {
  248. this.goodsIndex = this.goodsIndex + 1;
  249. this.planGoodsList =this.workList[this.goodsIndex].goodsVos
  250. this.goodsItem = this.planGoodsList[0];
  251. this.dealRL(this.workList[this.goodsIndex].calendarStudyVo)
  252. }
  253. },
  254. jumpPlan() {
  255. if (!this.$method.isLogin()) {
  256. this.$navTo.togo('/pages/login/login');
  257. } else {
  258. this.$navTo.togo('/pages2/plan/index', {});
  259. }
  260. },
  261. init() {
  262. if (!this.$method.isLogin()) {
  263. //未登录
  264. this.date_num = [];
  265. this.workList = [];
  266. this.planGoodsList = [];
  267. this.initDay();
  268. } else {
  269. this.date_num = [];
  270. this.workList = [];
  271. this.planGoodsList = [];
  272. this.userPlanSeven();
  273. }
  274. },
  275. getMonDate() {
  276. var d = new Date(),
  277. day = d.getDay(),
  278. date = d.getDate();
  279. if (day == 0) return d;
  280. else d.setDate(date - day);
  281. return d;
  282. },
  283. initDay() {
  284. // d是当前星期一的日期对象
  285. var d = this.getMonDate();
  286. var arr = [];
  287. let date = new Date();
  288. let num = date.getDate();
  289. this.date_num = []
  290. for (var i = 0; i < 7; i++) {
  291. let item = { date: d.getDate() };
  292. item.color = 0;
  293. if (d.getDate() == num) {
  294. item.color = 3;
  295. }
  296. this.date_num.push(item);
  297. d.setDate(d.getDate() + 1);
  298. }
  299. },
  300. dealRL(calendarStudyVo){
  301. let self = this
  302. self.date_num = []
  303. let date = new Date();
  304. let num = date.getDate();
  305. let month = date.getMonth() + 1;
  306. let list = [];
  307. for (let j = 0; j < calendarStudyVo.length; j++) {
  308. let item = calendarStudyVo[j];
  309. list = item.dayStudyList;
  310. for (let i = 0; i < list.length; i++) {
  311. let item = list[i];
  312. item.color = 0;
  313. if (item.date == num) {
  314. item.color = 3;
  315. }
  316. if (item.perform == 1) {
  317. item.color = 1;
  318. }
  319. if (item.perform == 2) {
  320. item.color = 2;
  321. }
  322. item.note = item.studyCourseKnob;
  323. if (item.note > 0) {
  324. item.dot = true;
  325. }
  326. self.date_num.push(item);
  327. }
  328. }
  329. },
  330. userPlanSeven() {
  331. let self = this;
  332. this.$api.userPlanSeven().then(result => {
  333. if (result.data.data.length>0) {
  334. self.workList = result.data.data
  335. self.planGoodsList = self.workList[0].goodsVos;
  336. if (self.planGoodsList != null && self.planGoodsList.length > 0) {
  337. self.goodsItem = self.planGoodsList[0];
  338. }
  339. self.dealRL(result.data.data[0].calendarStudyVo)
  340. /* let date = new Date();
  341. let num = date.getDate();
  342. let month = date.getMonth() + 1;
  343. let list = [];
  344. for (let i = 0; i < result.data.data[0].calendarStudyVo.length; i++) {
  345. let item = result.data.data[0].calendarStudyVo[i];
  346. if (item.month == month) {
  347. list = item.dayStudyList;
  348. }
  349. }
  350. for (let i = 0; i < list.length; i++) {
  351. let item = list[i];
  352. item.color = 0;
  353. if (item.date == num) {
  354. item.color = 3;
  355. }
  356. if (item.perform == 1) {
  357. item.color = 1;
  358. }
  359. if (item.perform == 2) {
  360. item.color = 2;
  361. }
  362. item.note = item.studyCourseKnob;
  363. if (item.note > 0) {
  364. item.dot = true;
  365. }
  366. self.date_num.push(item);
  367. } */
  368. } else {
  369. self.initDay();
  370. }
  371. });
  372. },
  373. tab(e) {
  374. this.tabCurrent = e;
  375. },
  376. updateHomePlan() {
  377. this.$refs.home.init();
  378. },
  379. beforeSwitch(index) {
  380. let that = this;
  381. if (index == 1) {
  382. this.isClick1 = true;
  383. }
  384. if (index == this.current) {
  385. return false;
  386. }
  387. if (!this.$method.isLogin()) {
  388. if (index == 0 || index == 1) {
  389. return true;
  390. } else {
  391. this.$navTo.togo('/pages/login/login');
  392. return false;
  393. }
  394. } else {
  395. if (index == 2) {
  396. this.$refs.refMy.init();
  397. }
  398. return true;
  399. }
  400. }
  401. },
  402. onReachBottom() {},
  403. computed: { ...mapGetters(['userInfo']) }
  404. };
  405. </script>
  406. <style lang="scss" scoped>
  407. .index {
  408. .slot-wrap {
  409. width:100%;
  410. display: flex;
  411. align-items: center;
  412. justify-content: flex-end;
  413. image {
  414. margin-right:98rpx;
  415. width: 178rpx;
  416. height: 31rpx;
  417. }
  418. }
  419. .swiper {
  420. width:100%;
  421. image {
  422. width:100%;
  423. }
  424. .indicator__dot {
  425. background: rgba(255, 255, 255, 1);
  426. &.indicator__dot--active {
  427. background: rgba(0, 122, 255, 1);
  428. }
  429. }
  430. }
  431. .content {
  432. overflow: hidden;
  433. padding:0 16rpx 16rpx;
  434. background: rgba(234, 238, 241, 1);
  435. .notice {
  436. background:#fff;
  437. border-radius: 16rpx;
  438. margin-top:16rpx;
  439. overflow: hidden;
  440. &__content {
  441. padding:0 8rpx;
  442. height: 56rpx;
  443. background: linear-gradient(-90deg, rgba(255, 209, 0, 0.3), rgba(255, 255, 255, 0.3));
  444. display: flex;
  445. align-items: center;
  446. }
  447. .icon {
  448. width: 40rpx;
  449. height: 40rpx;
  450. margin-right: 8rpx;
  451. }
  452. .text {
  453. flex:1;
  454. font-size: 24rpx;
  455. color: #333333;
  456. position: relative;
  457. }
  458. .btn {
  459. font-size: 24rpx;
  460. color: #007AFF;
  461. }
  462. }
  463. .date-list {
  464. margin-top:16rpx;
  465. width: 718rpx;
  466. height: 330rpx;
  467. background: #FFFFFF;
  468. border-radius: 16rpx;
  469. padding:18rpx 27rpx;
  470. .title {
  471. font-size: 30rpx;
  472. font-weight: bold;
  473. color: #007AFF;
  474. }
  475. .list {
  476. margin-top:40rpx;
  477. display: flex;
  478. justify-content: space-around;
  479. .item {
  480. .top {
  481. text-align: center;
  482. font-size: 26rpx;
  483. color: rgba(102, 102, 102, 0.6);
  484. }
  485. .bottom {
  486. text-align: center;
  487. line-height: 48rpx;
  488. margin-top:30rpx;
  489. width: 48rpx;
  490. height: 48rpx;
  491. border-radius: 50%;
  492. color:rgba(51, 51, 51, 1);
  493. font-size: 26rpx;
  494. position:relative;
  495. &.red {
  496. color:red;
  497. }
  498. &.green {
  499. color:green;
  500. }
  501. &.blue {
  502. background: #007AFF;
  503. color:#fff;
  504. }
  505. .note {
  506. width: 30rpx;
  507. height: 30rpx;
  508. border: 2rpx solid #FF9500;
  509. border-radius: 50%;
  510. position:absolute;
  511. top:-20rpx;
  512. right:-20rpx;
  513. line-height: 28rpx;
  514. text-align: center;
  515. color:#FF9500;
  516. font-size: 26rpx;
  517. }
  518. .point {
  519. margin:0 auto;
  520. width: 8rpx;
  521. height: 8rpx;
  522. background: #FF9500;
  523. border-radius: 50%;
  524. }
  525. }
  526. }
  527. }
  528. .btns {
  529. margin-top:50rpx;
  530. display: flex;
  531. align-items: center;
  532. justify-content: center;
  533. .left,.right {
  534. width: 40rpx;
  535. height: 40rpx;
  536. }
  537. .center{
  538. width: 440rpx;
  539. height: 56rpx;
  540. background: #FFFFFF;
  541. box-shadow: 0px 0px 9rpx 1rpx rgba(47, 67, 121, 0.1);
  542. border-radius: 28rpx;
  543. color:rgba(255, 149, 0, 1);
  544. line-height: 56rpx;
  545. text-align: center;
  546. font-size: 30rpx;
  547. margin:0 30rpx;
  548. }
  549. }
  550. }
  551. .tabs {
  552. /deep/ .u-tabs {
  553. background:none!important;
  554. }
  555. }
  556. .course-list {
  557. background:#fff;
  558. padding:0 8rpx;
  559. box-shadow: 0px 10rpx 9rpx 1rpx rgba(165, 196, 239, 0.1);
  560. border-radius: 16rpx ;
  561. .item {
  562. padding:8rpx 0;
  563. border-bottom:1rpx solid #eeeeee;
  564. display: flex;
  565. .img {
  566. position:relative;
  567. margin-right:10rpx;
  568. border-radius: 16rpx ;
  569. overflow: hidden;
  570. width: 320rpx;
  571. height: 155rpx;
  572. image {
  573. width:100%;
  574. height:100%;
  575. }
  576. .time {
  577. position:absolute;
  578. bottom:0;
  579. right:0;
  580. width: 80rpx;
  581. height: 32rpx;
  582. background: rgba(1, 25, 45, 0.4);
  583. color:#fff;
  584. text-align: center;
  585. line-height: 32rpx;
  586. font-size: 24rpx;
  587. border-radius: 10rpx 0px 10rpx 0px;
  588. }
  589. }
  590. .text {
  591. flex:1;
  592. padding-right:10rpx;
  593. position: relative;
  594. .title {
  595. font-size: 30rpx;
  596. color: #333333;
  597. }
  598. .desc {
  599. margin-top:40rpx;
  600. display: flex;
  601. position: absolute;
  602. bottom: 0;
  603. width: 100%;
  604. .left {
  605. flex:1;
  606. color:#333;
  607. font-size: 26rpx;
  608. text {
  609. font-size: 24rpx;
  610. color:#999;
  611. }
  612. }
  613. .right {
  614. font-size: 24rpx;
  615. font-weight: bold;
  616. color: #FF2D55;
  617. }
  618. }
  619. }
  620. }
  621. }
  622. }
  623. }
  624. .date_dot {
  625. width: 6rpx;
  626. height: 6rpx;
  627. background: #ffcc00;
  628. border-radius: 50%;
  629. margin: 0 auto;
  630. }
  631. .date_note {
  632. border-radius: 50%;
  633. width: 29rpx;
  634. height: 29rpx;
  635. border: 1px solid #ffcc00;
  636. font-size: 18rpx;
  637. color: #ffcc00;
  638. text-align: center;
  639. display: inline-block;
  640. position: absolute;
  641. top: -19rpx;
  642. right: 9rpx;
  643. }
  644. .circle_num {
  645. border-radius: 50%;
  646. width: 29rpx;
  647. height: 29rpx;
  648. border: 1px solid #ffcc00;
  649. font-size: 18rpx;
  650. color: #ffcc00;
  651. text-align: center;
  652. display: inline-block;
  653. margin: 5rpx;
  654. }
  655. .date_num {
  656. width: 14%;
  657. text-align: center;
  658. position: relative;
  659. display: inline-block;
  660. margin-top: 20rpx;
  661. }
  662. .course_title {
  663. color: #2f4379;
  664. box-shadow: 0rpx 0rpx 9rpx 1rpx rgba(47, 67, 121, 0.1);
  665. border-radius: 28rpx;
  666. width: 100%;
  667. height: 48rpx;
  668. line-height: 48rpx;
  669. overflow: hidden;
  670. text-overflow:ellipsis;
  671. white-space: nowrap;
  672. }
  673. .arr-icon {
  674. width: 40rpx;
  675. height: 40rpx;
  676. }
  677. .date_num_color0 {
  678. color: #32467b;
  679. }
  680. .date_num_color1 {
  681. color: #34c759;
  682. }
  683. .date_num_color2 {
  684. color: #ff3b30;
  685. }
  686. .date_num_color3 {
  687. color: #ffffff;
  688. background-color: #ffcc00;
  689. border-radius: 50%;
  690. width: 40rpx;
  691. height: 40rpx;
  692. display: inline-block;
  693. }
  694. .card_date {
  695. width: 14%;
  696. text-align: center;
  697. color: #7f8caf;
  698. }
  699. page {
  700. background: #ffffff;
  701. font-size: 28rpx;
  702. }
  703. .calendar_card {
  704. width: 100%;
  705. background: #ffffff;
  706. box-shadow: 0rpx 0rpx 16rpx 4rpx rgba(47, 67, 121, 0.1);
  707. border-radius: 22rpx;
  708. margin-top: 16rpx;
  709. padding-bottom: 15rpx;
  710. }
  711. .calendar_card .card_box {
  712. height: 60rpx;
  713. line-height: 60rpx;
  714. margin-left: 40rpx;
  715. }
  716. .calendar_card .t1 {
  717. color: #7f8caf;
  718. font-size: 24rpx;
  719. }
  720. .calendar_card .t2 {
  721. font-size: 24rpx;
  722. font-family: PingFang SC;
  723. font-weight: bold;
  724. color: #32467b;
  725. margin: 0 10rpx;
  726. }
  727. .calendar_card .t3 {
  728. font-size: 30rpx;
  729. font-weight: bold;
  730. color: #32467b;
  731. text-shadow: 0rpx 3rpx 3rpx rgba(0, 0, 0, 0.2);
  732. margin: 0 10rpx;
  733. }
  734. .img_more {
  735. width: 26rpx;
  736. height: 26rpx;
  737. }
  738. .flex-d {
  739. display: flex;
  740. flex-direction: column;
  741. justify-content: space-between;
  742. height: 100%;
  743. }
  744. .contentZ {
  745. flex: 1;
  746. overflow-y: auto;
  747. padding-left: 35rpx;
  748. display: flex;
  749. justify-content: space-around;
  750. }
  751. .contentZ::-webkit-scrollbar {
  752. display: none;
  753. }
  754. .fots {
  755. height: 100rpx;
  756. display: flex;
  757. align-items: center;
  758. justify-content: space-around;
  759. border-top: 1rpx solid #eee;
  760. }
  761. .leftBtns {
  762. font-size: 30rpx;
  763. color: #32467b;
  764. font-weight: 500;
  765. }
  766. .right_Btns {
  767. font-size: 30rpx;
  768. color: #fff;
  769. background-color: #32467b;
  770. border-radius: 24rpx;
  771. height: 60rpx;
  772. line-height: 60rpx;
  773. text-align: center;
  774. padding: 0rpx 23rpx;
  775. box-shadow: 0rpx 0rpx 16rpx 4rpx rgba(145, 156, 178, 0.1);
  776. }
  777. .lzs {
  778. width: 31%;
  779. margin: 0rpx 1%;
  780. max-width: 31%;
  781. }
  782. .tylsz{
  783. margin-top: 23rpx;
  784. color: #666;
  785. font-weight: 400;
  786. font-size: 24rpx;
  787. }
  788. .tylsz:first-child{
  789. text-align: center;
  790. }
  791. .activeStys{
  792. font-weight: bold;
  793. color: #32467B;
  794. }
  795. </style>