examReport.vue 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755
  1. <template>
  2. <view class="page-view">
  3. <top-return color="#FFF"></top-return>
  4. <!-- 背景 -->
  5. <view class="bg1"></view>
  6. <view class="flex-row">
  7. <view class="flex-column" style="margin: 120rpx 0 0 50rpx;">
  8. <view class="report-title">评测</view>
  9. <view class="report-title">分析报告</view>
  10. <view class="report-subtitle">{{examData[index].examInfo.name}}</view>
  11. </view>
  12. <view class="detail-image1" :style="{backgroundImage:`url(${image1})`}"></view>
  13. <view class="detail-image2" :style="{backgroundImage:`url(${image2})`}"></view>
  14. </view>
  15. <view class="card-view">
  16. <view class="card-item">
  17. <view class="card-box">
  18. <view class="card-image" :style="{backgroundImage:`url(${image3})`}"></view>
  19. <view class="flex-column">
  20. <view class="total-card-title">成绩总分:</view>
  21. <view class="flex-row">
  22. <view class="total-card-data">{{reportData.totalScore}}</view>
  23. <view class="total-card-title" style="margin: 16rpx 0 0 6rpx;">分</view>
  24. </view>
  25. </view>
  26. </view>
  27. <view class="card-data">
  28. <view class="flex-column" v-for="(item,i) in reportData.gradeData" :key="i">
  29. <view class="YS-title">{{item.subject}}</view>
  30. <view class="flex-baseline">
  31. <view class="title">{{item.grade}}</view>
  32. <view class="subtitle">/{{item.score}}</view>
  33. </view>
  34. </view>
  35. </view>
  36. </view>
  37. <view class="card-item">
  38. <view class="title-box">
  39. <view class="title-tag"></view>
  40. <view class="title">成绩对比</view>
  41. <view class="subsection">
  42. <u-subsection :list="contrastList" :current="contrastCurrent" @change="changeContrast"
  43. activeColor="#FFF">
  44. </u-subsection>
  45. </view>
  46. </view>
  47. <view class="table-container">
  48. <uni-table :loading="tableLoading">
  49. <!-- 表头行 -->
  50. <uni-tr>
  51. <uni-th width="40" align="center">科目</uni-th>
  52. <uni-th width="25" align="center">分数</uni-th>
  53. <!-- <uni-th>名次</uni-th> -->
  54. <uni-th width="25" align="center">平均分</uni-th>
  55. <uni-th width="25" align="center">最高分</uni-th>
  56. <uni-th width="25" align="center">名次</uni-th>
  57. </uni-tr>
  58. <uni-tr v-for="(item,index) in reportData.tableData" :key="index">
  59. <uni-td width="40" align="center">
  60. <view class="title">{{item.subject}}</view>
  61. </uni-td>
  62. <uni-td width="25" align="center">
  63. <view class="data" :style="{color: item.grade > item.average ?'#23b46c':'#ff5959'}">
  64. {{item.grade}}
  65. </view>
  66. </uni-td>
  67. <uni-td width="25" align="center">
  68. <view class="data" style="color: #909399;">{{item.average}}</view>
  69. </uni-td>
  70. <uni-td width="25" align="center">
  71. <view class="data" style="color: #ff8caf;">{{item.top}}</view>
  72. </uni-td>
  73. <uni-td width="25" align="center">
  74. <view class="data">
  75. {{item.rank}}
  76. </view>
  77. </uni-td>
  78. </uni-tr>
  79. </uni-table>
  80. </view>
  81. <view class="msg-box">
  82. <view class="flex-baseline">
  83. <view class="subtitle">班级</view>
  84. <view class="title">{{reportData.classNum}}</view>
  85. <view class="subtitle">人</view>
  86. </view>
  87. <view class="flex-baseline">
  88. <view class="subtitle">年级</view>
  89. <view class="title">{{reportData.gradeNum}}</view>
  90. <view class="subtitle">人</view>
  91. </view>
  92. <view class="flex-baseline">
  93. <view class="subtitle">联考</view>
  94. <view class="title">{{reportData.areaNum}}</view>
  95. <view class="subtitle">人</view>
  96. </view>
  97. </view>
  98. </view>
  99. <view class="card-item">
  100. <view class="title-box">
  101. <view class="title-tag"></view>
  102. <view class="title">成绩分布</view>
  103. <view class="subsection">
  104. <u-subsection :list="distributionList" :current="distributionCurrent"
  105. @change="changeDistribution" activeColor="#FFF">
  106. </u-subsection>
  107. </view>
  108. </view>
  109. <view class="chart-box" style="height: 420rpx;">
  110. <qiun-data-charts type="column" ontouch="true" :chartData="reportData.distributionChartData"
  111. tooltipFormat="distributionColumn"
  112. :opts="{legend:{show:false},padding:[20, 20, 20, 10],yAxis:{gridType: 'dash',dashLength: 10},extra:{column:{barBorderCircle: false ,barBorderRadius: [6,6,0,0]}}}" />
  113. </view>
  114. <view class="distribution-box">
  115. <view class="segment-data">
  116. <view class="text">孩子分段数</view>
  117. <view class="text">{{reportData.distributionNum}}分</view>
  118. </view>
  119. <view class="sutdent-data">
  120. <view class="data-item">
  121. <view class="title-box">
  122. <view class="title">班级学生数</view>
  123. </view>
  124. <view class="flex-baseline">
  125. <view class="data">{{reportData.distributionData[0]}}</view>
  126. <view class="unit">人</view>
  127. </view>
  128. </view>
  129. <view class="data-item">
  130. <view class="title-box">
  131. <view class="title">年级学生数</view>
  132. </view>
  133. <view class="flex-baseline">
  134. <view class="data">{{reportData.distributionData[1]}}</view>
  135. <view class="unit">人</view>
  136. </view>
  137. </view>
  138. <view class="data-item">
  139. <view class="title-box">
  140. <view class="title">联考学生数</view>
  141. </view>
  142. <view class="flex-baseline">
  143. <view class="data">{{reportData.distributionData[2]}}</view>
  144. <view class="unit">人</view>
  145. </view>
  146. </view>
  147. </view>
  148. </view>
  149. </view>
  150. <view class="card-item">
  151. <view class="title-box">
  152. <view class="title-tag"></view>
  153. <view class="title">近期对比</view>
  154. </view>
  155. <view class="chart-box" style="height: 550rpx;">
  156. <qiun-data-charts type="column" ontouch="true" :chartData="reportData.recentContrastChartData"
  157. tooltipFormat='tooltipScore'
  158. :opts="{padding:[-10, 20, 20, 10],yAxis:{gridType: 'dash',dashLength: 10},extra:{column:{barBorderCircle: false ,barBorderRadius: [6,6,0,0]}}}" />
  159. </view>
  160. <view class="cutting-line" />
  161. <view class="title-box">
  162. <view class="title-tag"></view>
  163. <view class="title">诊断分析</view>
  164. </view>
  165. <view class="analysis-box">
  166. <view class="flex-baseline">
  167. <view class="subtitle">本次考试中</view>
  168. <view class="title">{{advantage.name}}</view>
  169. <view class="subtitle">得分率最高,是孩子优势科目;</view>
  170. </view>
  171. <view class="flex-baseline" style="margin-top: 20rpx;">
  172. <view class="title" style="color: #ff5959;margin-left: 0;">{{disadvantage.name}}</view>
  173. <view class="subtitle">相较其他科目</view>
  174. <view class="title" style="color: #ff5959;">失分率最高</view>
  175. <view class="subtitle">是劣势科目;</view>
  176. </view>
  177. <view class="flex-baseline" style="margin-top: 20rpx;">
  178. <view class="subtitle">劣势科目失分率为</view>
  179. <view class="title" style="color: #ff5959;">{{(1-disadvantage.score).toFixed(2)*100}}%</view>
  180. <view class="subtitle">希望继续努力!</view>
  181. </view>
  182. </view>
  183. <view class="subtitle" style="margin:30rpx;font-size: 26rpx;">#结果由系统维度分析得出,仅供参考#</view>
  184. <view class="btn">
  185. <view class="btn-text">获取提分方案</view>
  186. </view>
  187. </view>
  188. <view class="card-item">
  189. <view class="title-box">
  190. <view class="title-tag"></view>
  191. <view class="title">科目优劣</view>
  192. <view class="subsection">
  193. <u-subsection :list="meritsList" :current="meritsCurrent" @change="changeMerits"
  194. activeColor="#FFF">
  195. </u-subsection>
  196. </view>
  197. </view>
  198. <view class="chart-box">
  199. <qiun-data-charts type="radar" ontouch="true" :chartData="reportData.advantageChartData"
  200. tooltipFormat="meritsRadar" />
  201. </view>
  202. <view class="cutting-line" />
  203. <view class="title-box">
  204. <view class="title-tag"></view>
  205. <view class="title">偏科分析</view>
  206. </view>
  207. <view class="analysis-box">
  208. <view class="flex-baseline">
  209. <view class="subtitle">本次考试中</view>
  210. <view class="title">{{advantage.name}}</view>
  211. <view class="subtitle">得分率最高,是孩子优势科目;</view>
  212. </view>
  213. <view class="flex-baseline" style="margin-top: 20rpx;">
  214. <view class="title" style="color: #ff5959;margin-left: 0;">{{disadvantage.name}}</view>
  215. <view class="subtitle">相较其他科目</view>
  216. <view class="title" style="color: #ff5959;">失分率最高</view>
  217. <view class="subtitle">是劣势科目;</view>
  218. </view>
  219. <view class="flex-baseline" style="margin-top: 20rpx;">
  220. <view class="subtitle">劣势科目失分率为</view>
  221. <view class="title" style="color: #ff5959;">{{(1-disadvantage.score).toFixed(2)*100}}%</view>
  222. <view class="subtitle">希望继续努力!</view>
  223. </view>
  224. </view>
  225. <view class="subtitle" style="margin:30rpx;font-size: 26rpx;">#结果由系统维度分析得出,仅供参考#</view>
  226. <view class="btn">
  227. <view class="btn-text">获取提分方案</view>
  228. </view>
  229. </view>
  230. <view class="card-item">
  231. <view class="title-box">
  232. <view class="title-tag"></view>
  233. <view class="title">评测分析报告</view>
  234. </view>
  235. <view class="btn-box">
  236. <view class="subbtn">
  237. <view class="subbtn-text">下载报告</view>
  238. </view>
  239. <view class="subbtn">
  240. <view class="subbtn-text">分享报告</view>
  241. </view>
  242. </view>
  243. </view>
  244. </view>
  245. </view>
  246. </template>
  247. <script>
  248. import {
  249. mapState
  250. } from 'vuex'
  251. export default {
  252. computed: {
  253. ...mapState('m_children', ['examData'])
  254. },
  255. data() {
  256. return {
  257. index: '',
  258. reportData: {
  259. totalScore: 525,
  260. gradeData: [{
  261. subject: '语文',
  262. grade: 82,
  263. score: 100,
  264. }, {
  265. subject: '数学',
  266. grade: 94,
  267. score: 100,
  268. }, {
  269. subject: '英语',
  270. grade: 84,
  271. score: 100,
  272. }, {
  273. subject: '科学',
  274. grade: 78,
  275. score: 100,
  276. }, {
  277. subject: '思品',
  278. grade: 95,
  279. score: 100,
  280. }, {
  281. subject: '体育',
  282. grade: 92,
  283. score: 100,
  284. }],
  285. tableData: [{
  286. subject: '总分',
  287. grade: 525,
  288. average: 499,
  289. top: 521,
  290. rank: 5
  291. },
  292. {
  293. subject: '语文',
  294. grade: 83,
  295. average: 80,
  296. top: 92,
  297. rank: 9
  298. },
  299. {
  300. subject: '数学',
  301. grade: 93,
  302. average: 84,
  303. top: 99,
  304. rank: 6
  305. },
  306. {
  307. subject: '外语',
  308. grade: 92,
  309. average: 87,
  310. top: 96,
  311. rank: 4
  312. },
  313. {
  314. subject: '思品',
  315. grade: 80,
  316. average: 83,
  317. top: 92,
  318. rank: 3
  319. },
  320. {
  321. subject: '体育',
  322. grade: 99,
  323. average: 87,
  324. top: 99,
  325. rank: 1
  326. },
  327. {
  328. subject: '科学',
  329. grade: 93,
  330. average: 89,
  331. top: 96,
  332. rank: 3
  333. }
  334. ],
  335. classNum: 55,
  336. gradeNum: 1200,
  337. areaNum: 16000,
  338. distributionChartData: {
  339. "categories": ["0-100", "100-200", "200-300", "300-400", "400-500", "500-600", "600-700"],
  340. "series": [{
  341. "name": "年级学生数",
  342. "data": [7, 15, 72, 252, 333, 243, 18]
  343. },
  344. {
  345. "name": "班级学生数",
  346. "data": [1, 5, 12, 23, 22, 7, 1]
  347. }
  348. ]
  349. },
  350. distributionNum: "500-600",
  351. distributionData: [12, 130, 333],
  352. advantageChartData: {
  353. "categories": ["语文", "数学", "英语", "科学", "思品", "体育"],
  354. "series": [{
  355. "name": "个人得分率",
  356. "data": [82, 94, 84, 78, 95, 92]
  357. },
  358. {
  359. "name": "平均得分率",
  360. "data": [88, 67, 90, 82, 75, 81]
  361. },
  362. {
  363. "name": "最高得分率",
  364. "data": [96, 92, 94, 91, 89, 90]
  365. }
  366. ]
  367. },
  368. recentContrastChartData: {
  369. "categories": ["语文", "数学", "英语", "科学", "思品", "体育"],
  370. series: [{
  371. name: "当前测验成绩",
  372. data: [82, 94, 84, 78, 95, 92]
  373. },
  374. {
  375. name: "上次测验成绩",
  376. data: [88, 84, 97, 92, 89, 93]
  377. }
  378. ],
  379. }
  380. },
  381. contrastList: ['班级', '年级', '联考'],
  382. contrastCurrent: 0,
  383. distributionList: ['校级', '联考'],
  384. distributionCurrent: 0,
  385. meritsList: ['班级', '年级', '联考'],
  386. meritsCurrent: 0,
  387. tableLoading: false,
  388. advantage: '',
  389. disadvantage: '',
  390. image1: 'https://ouch-cdn2.icons8.com/PvGwCISfYx-NAQwl4UsdY2QXtMMiNDB6LllqLZ4jGoA/rs:fit:367:456/czM6Ly9pY29uczgu/b3VjaC1wcm9kLmFz/c2V0cy9wbmcvNzg1/LzhiM2MwZWU2LWFl/ODMtNDM2Mi05MGQy/LTBmMDk0N2M4N2E1/OC5wbmc.png',
  391. image2: 'https://ouch-cdn2.icons8.com/I-PEjM-V1LXrgVE1_yaPi7LY2XrgFXgKmEvBD3r1h_Y/rs:fit:484:456/czM6Ly9pY29uczgu/b3VjaC1wcm9kLmFz/c2V0cy9wbmcvMzcy/LzA0ZDY3Y2NlLTM3/YTUtNGE3OC1iZTVi/LTY4MzgyYTQ2YmUz/Zi5wbmc.png',
  392. image3: 'https://cdn-icons-png.flaticon.com/512/4524/4524478.png',
  393. };
  394. },
  395. onLoad(param) {
  396. this.index = param.index
  397. this.getAnalysisData()
  398. },
  399. methods: {
  400. changeContrast(e) {
  401. this.contrastCurrent = e
  402. },
  403. changeDistribution(e) {
  404. this.distributionCurrent = e
  405. },
  406. changeMerits(e) {
  407. this.meritsCurrent = e
  408. },
  409. getAnalysisData() {
  410. let advantage = {
  411. name: '',
  412. score: 0
  413. }
  414. let disadvantage = {
  415. name: '',
  416. score: 1
  417. }
  418. this.reportData.gradeData.forEach((item, index) => {
  419. if (item.grade / item.score > advantage.score) {
  420. advantage.score = item.grade / item.score
  421. advantage.name = item.subject
  422. }
  423. if (item.grade / item.score < disadvantage.score) {
  424. disadvantage.score = item.grade / item.score
  425. disadvantage.name = item.subject
  426. }
  427. })
  428. this.advantage = advantage
  429. this.disadvantage = disadvantage
  430. }
  431. },
  432. }
  433. </script>
  434. <style lang="scss">
  435. @import 'data_pages.scss';
  436. @import 'top_info.scss';
  437. .bg1 {
  438. position: fixed;
  439. width: 100%;
  440. height: 1200rpx;
  441. background-size: 100%;
  442. background-repeat: no-repeat;
  443. background-image: linear-gradient(to top, #f3f4f9, #ff8caf);
  444. }
  445. .detail-image1 {
  446. position: absolute;
  447. top: 150rpx;
  448. left: 560rpx;
  449. width: 300rpx;
  450. height: 350rpx;
  451. background-size: 100%;
  452. background-repeat: no-repeat;
  453. z-index: 51;
  454. }
  455. .detail-image2 {
  456. position: absolute;
  457. top: 200rpx;
  458. left: 380rpx;
  459. width: 300rpx;
  460. height: 350rpx;
  461. background-size: 100%;
  462. background-repeat: no-repeat;
  463. z-index: 50;
  464. }
  465. .card-item {
  466. width: 100%;
  467. .card-box {
  468. display: flex;
  469. padding: 20rpx 30rpx;
  470. justify-content: space-around;
  471. height: 180rpx;
  472. border-radius: $border-radius;
  473. background-color: #ff8caf;
  474. opacity: 0.8;
  475. .flex-column {
  476. height: 100%;
  477. justify-content: space-around;
  478. .total-card-title {
  479. line-height: 45rpx;
  480. font-size: 45rpx;
  481. color: #FFF;
  482. font-family: YSfont;
  483. }
  484. .total-card-data {
  485. color: #FFF;
  486. font-size: 85rpx;
  487. line-height: 45rpx;
  488. font-family: YSfont;
  489. }
  490. }
  491. .card-image {
  492. position: relative;
  493. top: -20rpx;
  494. height: 220rpx;
  495. width: 220rpx;
  496. background-size: cover;
  497. background-repeat: no-repeat;
  498. z-index: 2;
  499. }
  500. }
  501. .card-data {
  502. padding: 20rpx;
  503. display: flex;
  504. flex-flow: row wrap;
  505. justify-content: space-between;
  506. .flex-column {
  507. justify-content: space-around;
  508. height: 120rpx;
  509. margin: 20rpx 40rpx;
  510. .title {
  511. font-size: 40rpx;
  512. }
  513. .subtitle {
  514. font-weight: 400;
  515. }
  516. .YS-title {
  517. font-size: 40rpx;
  518. }
  519. }
  520. }
  521. .title-box {
  522. display: flex;
  523. align-items: center;
  524. padding: 20rpx 0;
  525. .title-tag {
  526. margin-left: -10rpx;
  527. margin-right: 20rpx;
  528. height: 100%;
  529. width: 20rpx;
  530. border-radius: 100rpx;
  531. background-color: #ff8caf;
  532. z-index: 99;
  533. }
  534. .title {
  535. font-size: 35rpx;
  536. line-height: 50rpx;
  537. }
  538. .subsection {
  539. width: 300rpx;
  540. height: 100%;
  541. margin: 0 30rpx 0 auto;
  542. .u-subsection--button__bar {
  543. background-color: #ff8caf !important;
  544. }
  545. }
  546. }
  547. .table-container {
  548. margin-bottom: 20rpx;
  549. .title {
  550. line-height: 30rpx;
  551. font-size: 30rpx;
  552. color: $title;
  553. }
  554. .data {
  555. line-height: 32rpx;
  556. font-size: 32rpx;
  557. font-weight: bold;
  558. color: $title;
  559. }
  560. }
  561. .msg-box {
  562. margin: 0 20rpx 40rpx 20rpx;
  563. padding: 20rpx;
  564. display: flex;
  565. border-radius: $border-radius;
  566. justify-content: space-around;
  567. background-color: #f3f4f9;
  568. .title {
  569. height: 32rpx;
  570. line-height: 32rpx;
  571. color: #ff8caf;
  572. margin: 0 6rpx;
  573. }
  574. }
  575. .chart-box {
  576. height: 650rpx;
  577. }
  578. .distribution-box {
  579. margin: 0 20rpx 40rpx 20rpx;
  580. height: 150rpx;
  581. display: flex;
  582. border-radius: $border-radius;
  583. background-color: #f3f4f9;
  584. overflow: hidden;
  585. .segment-data {
  586. display: flex;
  587. flex-direction: column;
  588. align-items: center;
  589. background-color: #ff8caf;
  590. justify-content: space-around;
  591. padding: 16rpx 0;
  592. width: 30%;
  593. .text {
  594. font-size: 30rpx;
  595. line-height: 30rpx;
  596. color: #FFF;
  597. }
  598. }
  599. .sutdent-data {
  600. display: flex;
  601. justify-content: space-around;
  602. width: 70%;
  603. .data-item {
  604. display: flex;
  605. flex-direction: column;
  606. align-items: center;
  607. width: 33%;
  608. height: 100%;
  609. .title-box {
  610. display: flex;
  611. align-items: center;
  612. justify-content: center;
  613. background-color: #ffe6ed;
  614. height: 40rpx;
  615. width: 101%;
  616. .title {
  617. line-height: 28rpx;
  618. font-size: 28rpx;
  619. font-weight: 400;
  620. color: $title;
  621. }
  622. }
  623. .data {
  624. line-height: 70rpx;
  625. font-size: 35rpx;
  626. font-weight: bold;
  627. color: #ff8caf;
  628. }
  629. .unit{
  630. margin-left: 4rpx;
  631. line-height: 26rpx;
  632. font-size: 26rpx;
  633. font-weight: bold;
  634. color: $subtitle;
  635. }
  636. }
  637. }
  638. }
  639. .cutting-line {
  640. margin: 0 50rpx 20rpx 50rpx;
  641. height: 1px;
  642. background-color: #e6e7eb;
  643. }
  644. .analysis-box {
  645. display: flex;
  646. flex-direction: column;
  647. margin: 10rpx 30rpx;
  648. .title {
  649. margin: 0 10rpx;
  650. line-height: 35rpx;
  651. font-size: 35rpx;
  652. color: $color-pink;
  653. }
  654. .subtitle {
  655. line-height: 30rpx;
  656. font-size: 30rpx;
  657. font-weight: 400;
  658. color: $title;
  659. }
  660. }
  661. .btn {
  662. display: flex;
  663. align-items: center;
  664. justify-content: center;
  665. height: 80rpx;
  666. margin: 0 30rpx 30rpx 30rpx;
  667. background-color: #ff8caf;
  668. border-radius: $border-radius;
  669. box-shadow: $box-shadow;
  670. .btn-text {
  671. line-height: 38rpx;
  672. font-size: 38rpx;
  673. color: #FFF;
  674. font-family: YSfont;
  675. }
  676. }
  677. .btn-box {
  678. display: flex;
  679. justify-content: space-between;
  680. margin: 10rpx 30rpx 30rpx 30rpx;
  681. .subbtn {
  682. display: flex;
  683. align-items: center;
  684. justify-content: center;
  685. height: 80rpx;
  686. width: 46%;
  687. border: 4rpx solid #ff8caf;
  688. border-radius: $border-radius;
  689. box-shadow: $box-shadow;
  690. .subbtn-text {
  691. line-height: 38rpx;
  692. font-size: 38rpx;
  693. color: #ff8caf;
  694. font-family: YSfont;
  695. }
  696. }
  697. }
  698. }
  699. </style>