report.vue 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587
  1. <template>
  2. <view class="zxbox">
  3. <view class="navbox">
  4. <uni-nav-bar color="#ffffff" rightWidth="200rpx" @clickLeft="getBack" title="年度履职报告" :background-color="backgroundColor" :border="false"
  5. statusBar='true' fixed="true">
  6. <block slot="left">
  7. <view class="topl">
  8. <image :src="backimg" ></image>
  9. </view>
  10. </block>
  11. <block slot="right">
  12. <picker mode="date" fields="year" value="nd" class="infolist_a" @change='bindDateChange'>
  13. <view class="picks">
  14. <view :class="year?'':'f16 co80'">{{year||"请选择"}}</view>
  15. <image :src="upimg"></image>
  16. </view>
  17. </picker>
  18. </block>
  19. </uni-nav-bar>
  20. </view>
  21. <image :src="bgimg" class="bgimg"></image>
  22. <view class="mbox">
  23. <view class="head flexc mb18">
  24. <image :src="headimg" class="headimg"></image>
  25. <view class="hinfo">
  26. <view class="tit">{{memberInfo.name}}</view>
  27. <view class="medal flexc">
  28. <view class="bg bg1">
  29. <image :src="medala"></image>
  30. 界别<text></text>{{kaType(memberInfo.boundary,jblist)}}
  31. </view>
  32. <!-- <view class="bg bg2">
  33. <image :src="medalb"></image>
  34. 党派<text></text>{{kaType(memberInfo.partyAffiliation,dplist)}}
  35. </view> -->
  36. </view>
  37. </view>
  38. </view>
  39. <view class="jinfo">
  40. <view class="tit mb14">基本信息</view>
  41. <view class="flex mb11">
  42. <view class="imgs"><image :src="infoa" class="imga"></image></view>
  43. <view class="txt">身份证号 | {{memberInfo.card}}</view>
  44. </view>
  45. <view class="flex mb11">
  46. <view class="imgs"><image :src="infob" class="imgb"></image></view>
  47. <view class="txt">联系方式 | {{memberInfo.phonenumber}}</view>
  48. </view>
  49. <view class="flex mb11">
  50. <view class="imgs"><image :src="infoc" class="imgc"></image></view>
  51. <view class="txt">工作单位及职务 | {{memberInfo.unit}}</view>
  52. </view>
  53. <view class="flex mb11">
  54. <view class="imgs"><image :src="infod" class="imgd"></image></view>
  55. <view class="txt">乡镇(经开区)委员工作室 | {{kaType(memberInfo.studio,wybgslist)}}</view>
  56. </view>
  57. </view>
  58. <!-- 分 -->
  59. <view class="score flexcj mb20">
  60. <view class="scorea">
  61. <image :src="bga"></image>
  62. <view class="box flexccc">
  63. <view class="num">{{scorecount.totalScore}}</view>
  64. <view class="f12 fw coe2">履职得分情况</view>
  65. <view class="f12 co22">(满分{{scorecount.fullScore||0}}分)</view>
  66. </view>
  67. </view>
  68. <view class="scorea">
  69. <image :src="bgb"></image>
  70. <view class="box flexccc">
  71. <view class="num">{{scorecount.rank||""}}</view>
  72. <view class="f12 fw co83">综合排名</view>
  73. <view class="f12 co22">(共{{scorecount.totalPeople||0}}名)</view>
  74. </view>
  75. </view>
  76. </view>
  77. <!-- tab -->
  78. <view class="tabs mb27">
  79. <view v-for="(ite,idx) in tabList" @click="getTabFn(ite.val)" :class="tabval==ite.val?'act':''" class="tab" :key="ite.val">{{ite.tit}}</view>
  80. </view>
  81. <block v-if="tabval==0">
  82. <view class="flexcw mb28">
  83. <view class="nums bga">
  84. <view class="tit flex1">政协提案</view>
  85. <view class="txt"><text>{{mapcount.proposalInfoNum}}</text>件</view>
  86. </view>
  87. <view class="nums bgb">
  88. <view class="tit flex1">社情民意</view>
  89. <view class="txt"><text>{{mapcount.sqmyInfoNum}}</text>件</view>
  90. </view>
  91. <view class="nums bga">
  92. <view class="tit flex1">招商数量</view>
  93. <view class="txt"><text>{{mapcount.investmentNum}}</text>件</view>
  94. </view>
  95. <view class="nums bgb">
  96. <view class="tit flex1">视察调研活动</view>
  97. <view class="txt"><text>{{mapcount.activityScdyNum}}</text>件</view>
  98. </view>
  99. <view class="nums bga">
  100. <view class="tit flex1">政协委员工作室活动</view>
  101. <view class="txt"><text>{{mapcount.activityLlzNum}}</text>件</view>
  102. </view>
  103. <view class="nums bgb">
  104. <view class="tit flex1">界别活动</view>
  105. <view class="txt"><text>{{mapcount.activityJbNum}}</text>件</view>
  106. </view>
  107. <view class="nums bga">
  108. <view class="tit flex1">为群众办实事活动</view>
  109. <view class="txt"><text>{{mapcount.activityBssNum}}</text>件</view>
  110. </view>
  111. <!-- <view class="nums bga">
  112. <view class="tit flex1">全会</view>
  113. <view class="txt"><text>{{mapcount.plenarySessionNum}}</text>件</view>
  114. </view>
  115. <view class="nums bgb">
  116. <view class="tit flex1">活动</view>
  117. <view class="txt"><text>{{mapcount.activityNum}}</text>件</view>
  118. </view>
  119. <view class="nums bga">
  120. <view class="tit flex1">普通会议</view>
  121. <view class="txt"><text>{{mapcount.conferenceNum}}</text>件</view>
  122. </view>
  123. <view class="nums bgb">
  124. <view class="tit flex1">会议发言</view>
  125. <view class="txt"><text>{{mapcount.speakNum}}</text>件</view>
  126. </view> -->
  127. </view>
  128. <!-- 雷达图 -->
  129. <view class="mb32">
  130. <qiun-data-charts type="radar" :opts="opts" :chartData="chartData"></qiun-data-charts>
  131. </view>
  132. <!-- 各项得分 -->
  133. <view class="jinfo">
  134. <view class="tit mb14">各项得分</view>
  135. <view class="gsbox">
  136. <!-- <view class="gslist">
  137. <view class="gtit">活动</view>
  138. <view class="gtxt">{{scorecount.activityScore}}</view>
  139. </view> -->
  140. <view class="gslist">
  141. <view class="gtit">会议</view>
  142. <view class="gtxt">{{scorecount.conferenceScore}}</view>
  143. </view>
  144. <view class="gslist">
  145. <view class="gtit">社情民意</view>
  146. <view class="gtxt">{{scorecount.sqmyScore}}</view>
  147. </view>
  148. <view class="gslist">
  149. <view class="gtit">政协提案</view>
  150. <view class="gtxt">{{scorecount.proposalScore}}</view>
  151. </view>
  152. <view class="gslist">
  153. <view class="gtit">招商引资</view>
  154. <view class="gtxt">{{scorecount.investmentScore}}</view>
  155. </view>
  156. <view class="gslist">
  157. <view class="gtit">视察调研活动</view>
  158. <view class="gtxt">{{scorecount.activityScdyScore}}</view>
  159. </view>
  160. <view class="gslist">
  161. <view class="gtit">政协委员工作室活动</view>
  162. <view class="gtxt">{{scorecount.activityLlzScore}}</view>
  163. </view>
  164. <view class="gslist">
  165. <view class="gtit">界别活动</view>
  166. <view class="gtxt">{{scorecount.activityJbScore}}</view>
  167. </view>
  168. <view class="gslist">
  169. <view class="gtit">为群众办实事活动</view>
  170. <view class="gtxt">{{scorecount.activityBssScore}}</view>
  171. </view>
  172. <!-- <view class="gslist">
  173. <view class="gtit">会议发言</view>
  174. <view class="gtxt">{{scorecount.conferenceScore}}</view>
  175. </view> -->
  176. <!-- <view class="gslist">
  177. <view class="gtit">其他</view>
  178. <view class="gtxt">{{scorecount.bonusScore}}</view>
  179. </view> -->
  180. </view>
  181. </view>
  182. </block>
  183. <!-- 提案方便 -->
  184. <view class="list" v-if="tabval!=0">
  185. <view class="zfbox" v-if="tabval==2">个人提案方面总计得分 <text class="znum">{{scorecount.proposalScore||0}}</text> 分</view>
  186. <view class="zfbox" v-if="tabval==3">个人社情民意方面总计得分 <text class="znum">{{scorecount.sqmyScore||0}}</text> 分</view>
  187. <view class="zfbox" v-if="tabval==4">个人会议参与情况总计得分 <text class="znum">{{scorecount.conferenceScore||0}}</text> 分</view>
  188. <!-- <view class="zfbox" v-if="tabval==5">个人活动参与情况总计得分 <text class="znum">{{scorecount.activityScore||0}}</text> 分</view> -->
  189. <view class="zfbox" v-if="tabval==7">个人招商方面总计得分 <text class="znum">{{scorecount.investmentScore||0}}</text> 分</view>
  190. <view class="zfbox" v-if="tabval==8">个人视察调研活动总计得分 <text class="znum">{{scorecount.activityScdyScore||0}}</text> 分</view>
  191. <view class="zfbox" v-if="tabval==9">个人政协委员工作室活动总计得分 <text class="znum">{{scorecount.activityLlzScore||0}}</text> 分</view>
  192. <view class="zfbox" v-if="tabval==10">个人界别活动总计得分 <text class="znum">{{scorecount.activityJbScore||0}}</text> 分</view>
  193. <view class="zfbox" v-if="tabval==11">个人为群众办实事活动总计得分 <text class="znum">{{scorecount.activityBssScore||0}}</text> 分</view>
  194. <report-list :type='tabval' :wtdt="wtdt" :tajdlist="tajdlist" :sqjdlist="sqjdlist" :ztlxlist="ztlxlist" :hylxlist="hylxlist" :hdlxlist="hdlxlist" :datalist="list" @getDetail="getDetailFn"></report-list>
  195. <!-- <view class="upmore flexccc">
  196. <image :src="upmimg"></image>
  197. <view>下拉更多</view>
  198. </view> -->
  199. </view>
  200. </view>
  201. </view>
  202. </template>
  203. <script>
  204. import config from '@/config'
  205. const baseUrl = config.baseUrl
  206. import { selectValue } from '@/utils/common.js';
  207. import {getInfomenberDetai} from "@/api/mine/report.js"
  208. import {getDictionaryFn} from "@/api/mine/register.js"
  209. import reportList from "@/work/components/report/list.vue"
  210. export default {
  211. components:{reportList},
  212. data() {
  213. return {
  214. headimg:require("@/static/images/mine/header.png"),
  215. backimg:require("@/work/static/images/back.png"),
  216. bgimg: require("@/work/static/images/report/bg.png"),
  217. infoa:require("@/work/static/images/report/infoa.png"),
  218. infob:require("@/work/static/images/report/infob.png"),
  219. infoc:require("@/work/static/images/report/infoc.png"),
  220. infod:require("@/work/static/images/report/infod.png"),
  221. bga:require("@/work/static/images/report/bga.png"),
  222. bgb:require("@/work/static/images/report/bgb.png"),
  223. medala:require("@/work/static/images/report/medala.png"),
  224. medalb:require("@/work/static/images/report/medalb.png"),
  225. upimg:require("@/work/static/images/report/up.png"),
  226. upmimg:require("@/static/images/home/up.png"),
  227. backgroundColor:'transparent',
  228. year:'',
  229. wtdt:'',
  230. memberInfo:{},
  231. proposalInfoList:[],//提案集合
  232. sqmyInfoList:[],//社情民意集合
  233. zxConferenceList:[],//会议集合
  234. zxActivityList:[],//活动集合
  235. zxSpeakList:[],//发言集合
  236. zxInvestmentList:[],//招商集合
  237. activityScdyList:[],//视察调研集合
  238. activityLlzList:[],//联络组活动集合
  239. activityJbList:[],//界别集合
  240. activityBssList:[],//为群众办实事集合
  241. sqjdlist:[],
  242. jblist:[],
  243. dplist:[],
  244. tajdlist:[],
  245. ztlxlist:[],
  246. hylxlist:[],
  247. hdlxlist:[],
  248. wybgslist:[],
  249. mapcount:{},
  250. scorecount:{},
  251. tabval:0,
  252. list:[],
  253. tabList:[{tit:'履职状况',val:'0'},{tit:'会议参与情况',val:4},{tit:'提案方面',val:2},{tit:'社情民意方面',val:3},{tit:'招商引资',val:7},
  254. {tit:'视察调研活动',val:8},{tit:'政协委员工作室活动',val:9},{tit:'界别活动',val:10},
  255. {tit:'为群众办实事活动',val:11}
  256. // {tit:'活动参与情况',val:5},{tit:'会议发言情况',val:6},
  257. ],
  258. chartData:{
  259. categories: ["政协提案","社情民意","招商","视察调研活动","政协委员工作室活动","界别活动","为群众办实事活动",],
  260. series: [],
  261. },
  262. opts: {
  263. color: ["#1890FF","#91CB74","#FAC858","#EE6666","#73C0DE","#3CA272","#FC8452","#9A60B4","#ea7ccc"],
  264. padding: [5,5,5,5],
  265. dataLabel: false,
  266. enableScroll: false,
  267. legend: {
  268. show: true,
  269. position: "right",
  270. lineHeight: 25
  271. },
  272. "legend": {"show": false,},
  273. extra: {
  274. radar: {
  275. gridType: "radar",
  276. gridColor: "#CCCCCC",
  277. gridCount: 3,
  278. opacity: 0.2,
  279. max: 200,
  280. labelShow: true,
  281. border: true
  282. }
  283. }
  284. }
  285. }
  286. },
  287. onPageScroll(e) {
  288. var scrollTop = Number(e.scrollTop);
  289. var listTop=Number(this.listTop)-Number(this.nvaHeight)
  290. if (scrollTop <=this.nvaHeight) {
  291. const opacity = scrollTop / 100 // 计算透明度值
  292. const color = `rgba(29, 100, 226, ${opacity})`
  293. this.backgroundColor = color // 更新盒子背景颜色
  294. } else {
  295. this.backgroundColor = '#1D64E2'
  296. }
  297. },
  298. onLoad(e) {
  299. this.id=e.id;
  300. var date = new Date();
  301. this.year= date.getFullYear();
  302. this.getDetail()
  303. this.init()
  304. },
  305. methods: {
  306. getBack(){
  307. uni.navigateBack({
  308. delta:1
  309. })
  310. },
  311. kaType(ite,list){
  312. return selectValue(list, ite);
  313. },
  314. bindDateChange(e){
  315. var val=e.detail.value;
  316. this.year=val;
  317. this.getDetail()
  318. },
  319. getTabFn(val){
  320. this.tabval=val;
  321. this.list=[];
  322. if(val==2){
  323. this.list=this.proposalInfoList
  324. }else if(val==3){
  325. this.list=this.sqmyInfoList
  326. }else if(val==4){
  327. this.list=this.zxConferenceList
  328. }else if(val==5){
  329. this.list=this.zxActivityList
  330. }else if(val==6){
  331. this.list=this.zxSpeakList
  332. }else if(val==7){
  333. this.list=this.zxInvestmentList
  334. }else if(val==8){
  335. this.list=this.activityScdyList
  336. }else if(val==9){
  337. this.list=this.activityLlzList
  338. }else if(val==10){
  339. this.list=this.activityJbList
  340. }else if(val==11){
  341. this.list=this.activityBssList
  342. }
  343. },
  344. getDetailFn(data){
  345. var val=this.tabval;
  346. // console.log(data,this.tabval)
  347. // return
  348. if(val==2){//提案
  349. this.$tab.navigateTo('/work/pages/case/details?id='+data)
  350. }else if(val==3){//社情
  351. this.$tab.navigateTo('/work/pages/sqmyInfo/details?id='+data)
  352. }else if(val==4){//会议
  353. this.$tab.navigateTo('/work/pages/meeting/details?id='+data)
  354. }else if(val==7){//招商
  355. this.$tab.navigateTo('/work/pages/meeting/zsyzdetails?id='+data)
  356. }else{//活动
  357. this.$tab.navigateTo('/work/pages/meeting/activedetails?id='+data)
  358. }
  359. },
  360. init(){
  361. // 界别
  362. getDictionaryFn('circles').then(res=>{
  363. if(res.code==200&&res.data.length){
  364. this.jblist = res.data.map(v => {
  365. return {
  366. label: v.dictLabel,
  367. value:v.dictValue
  368. }
  369. })
  370. }
  371. })
  372. // 党派
  373. // getDictionaryFn('political_parties').then(res=>{
  374. // if(res.code==200&&res.data.length){
  375. // this.dplist = res.data.map(v => {
  376. // return {
  377. // label: v.dictLabel,
  378. // value: v.dictValue
  379. // }
  380. // })
  381. // }
  382. // })
  383. // 提案进度
  384. getDictionaryFn('proposal_progress').then(res=>{
  385. if(res.code==200){
  386. this.tajdlist = res.data.map(v => {
  387. return {
  388. label: v.dictLabel,
  389. value: v.dictValue
  390. }
  391. })
  392. }
  393. })
  394. // 社情进度
  395. getDictionaryFn('sqmy_jd').then(res=>{
  396. if(res.code==200){
  397. this.sqjdlist = res.data.map(v => {
  398. return {
  399. label: v.dictLabel,
  400. value: v.dictValue
  401. }
  402. })
  403. }
  404. })
  405. //主题类型
  406. getDictionaryFn('sqmy_topic_type').then(res=>{
  407. if(res.code==200){
  408. this.ztlxlist = res.data.map(v => {
  409. return {
  410. label: v.dictLabel,
  411. value: v.dictValue
  412. }
  413. })
  414. }
  415. })
  416. //会议类型
  417. getDictionaryFn('conference_type').then(res=>{
  418. if(res.code==200){
  419. this.hylxlist = res.data.map(v => {
  420. return {
  421. label: v.dictLabel,
  422. value: v.dictValue
  423. }
  424. })
  425. }
  426. })
  427. //活动类型
  428. getDictionaryFn('activity_type').then(res=>{
  429. if(res.code==200){
  430. this.hdlxlist = res.data.map(v => {
  431. return {
  432. label: v.dictLabel,
  433. value: v.dictValue
  434. }
  435. })
  436. }
  437. })
  438. // 办公室
  439. getDictionaryFn('member_studio').then(res=>{
  440. if(res.code==200&&res.data.length){
  441. this.wybgslist = res.data.map(v => {
  442. return {
  443. label: v.dictLabel,
  444. value: v.dictValue
  445. }
  446. })
  447. }
  448. })
  449. },
  450. getDetail(){
  451. var params={
  452. userId:this.id,
  453. year:this.year
  454. }
  455. getInfomenberDetai(params).then(res=>{
  456. if(res.code==200){
  457. this.datainfo=res.data;
  458. this.memberInfo=res.data.memberInfo;
  459. if(res.data.memberAssessmentInfo){
  460. this.scorecount=JSON.parse(JSON.stringify(res.data.memberAssessmentInfo));
  461. var score=res.data.memberAssessmentInfo
  462. var newArr=[score.proposalScore||0,score.sqmyScore||0,score.investmentScore||0,score.activityScdyScore||0,score.activityLlzScore||0,score.activityJbScore||0,score.activityBssScore||0,]
  463. var obj={
  464. name:'分值',
  465. data:newArr
  466. }
  467. var series=[]
  468. series.push(obj)
  469. this.chartData.series=series
  470. }
  471. if(res.data.map){
  472. this.mapcount=JSON.parse(JSON.stringify(res.data.map));
  473. }
  474. this.proposalInfoList=res.data.proposalInfoList||[];
  475. this.sqmyInfoList=res.data.sqmyInfoList||[];
  476. this.zxInvestmentList=res.data.zxInvestmentList||[];
  477. this.activityScdyList=res.data.activityScdyList||[];
  478. this.activityLlzList=res.data.activityLlzList||[];
  479. this.activityJbList=res.data.activityJbList||[];
  480. this.activityBssList=res.data.activityBssList||[];
  481. this.zxConferenceList=res.data.zxConferenceList||[];
  482. this.zxActivityList=res.data.zxActivityList||[];
  483. this.zxSpeakList=res.data.zxSpeakList||[];
  484. }
  485. })
  486. },
  487. }
  488. }
  489. </script>
  490. <style lang="scss">
  491. page {background-color: #ffffff;}
  492. .navbox{position: fixed;left: 0;right: 0;top: 0;z-index: 4;
  493. .topl{width: 60rpx;height: 60rpx;display: flex;align-items: center;justify-content: center;
  494. image{width: 40rpx;height: 30rpx;}
  495. }
  496. .topr{width: 36rpx;height: 36rpx;position: relative;margin-right: 10rpx;
  497. image{width: 100%;height: 100%;}
  498. .cir{width: 14rpx;height: 14rpx;background: #DF0024;border-radius: 50%;position: absolute;right: -7rpx;top: -7rpx;}
  499. }
  500. }
  501. .zxbox{
  502. .bgimg{width: 100%;height: 196rpx;}
  503. .mbox{margin-top: -34rpx;padding: 34rpx 24rpx 30rpx;z-index: 1;position: relative;border-radius: 30rpx 30rpx 0 0;background-color: #ffffff;
  504. .head{
  505. .headimg{width: 140rpx;height: 140rpx;flex: 0 0 auto;margin-right: 34rpx;}
  506. .hinfo{
  507. .tit{font-weight: bold;font-size: 34rpx;color: #222327;margin-bottom: 26rpx;}
  508. .medal{
  509. .bg{position: relative;height: 40rpx;border-radius: 4rpx;min-width: 200rpx;font-weight: 500;
  510. font-size: 20rpx;padding-left: 16rpx;box-sizing: border-box;text-align: center;
  511. color: #FFFFFF;line-height: 40rpx;
  512. text{border-right: 2rpx solid #ffffff;margin: 0 8rpx;}
  513. &.bg1{background: #C8A46D;margin-right: 36rpx;}
  514. &.bg2{background: #BC2828;}
  515. image{width: 32rpx;height: 40rpx;position: absolute;left: -16rpx;top: 0;}
  516. }
  517. }
  518. }
  519. }
  520. .jinfo{padding-bottom: 22rpx;
  521. .tit{font-weight: bold;font-size: 30rpx;color: #222327;}
  522. .imgs{width: 30rpx;height: 34rpx;display: flex;align-items: center;justify-content: center;margin-right: 14rpx;
  523. .imga{width:30rpx;height: 24rpx;}
  524. .imgb{width:18rpx;height: 26rpx;}
  525. .imgc{width:30rpx;height: 26rpx;}
  526. .imgd{width:26rpx;height: 26rpx;}
  527. }
  528. .txt{font-weight: 500;font-size: 26rpx;color: #222327;}
  529. .gsbox{background: #ECF1FD;border-radius: 10rpx;padding: 48rpx 26rpx 18rpx;display: flex;flex-wrap: wrap;justify-content: space-between;
  530. .gslist{width: 242rpx;display: flex;align-items: center;margin-bottom: 28rpx;flex: 0 1 auto;
  531. .gtit{font-weight: bold;font-size: 26rpx;color: #222327;flex: 0 0 auto;}
  532. .gtxt{font-weight: bold;font-size: 30rpx;color: #004BF6;flex:1;text-align: right;}
  533. }
  534. }
  535. }
  536. .score{
  537. .scorea{width: 334rpx;height: 146rpx;position: relative;
  538. image{width: 100%;height: 100%;}
  539. .box{position: absolute;left: 0;right: 0;top: 0;bottom: 0;text-align: center;
  540. .num{font-weight: 800;font-size: 40rpx;color: #222327;}
  541. }
  542. }
  543. }
  544. .tabs{display: flex;align-items: center;overflow-x: auto;
  545. .tab{font-weight: 500;font-size: 26rpx;color: #666666;position: relative;height: 88rpx;line-height: 88rpx;margin-right: 40rpx;flex: 0 0 auto;
  546. &.act{font-size: 30rpx;font-weight: bold;color: #222327;
  547. &::after{content: '';width:52rpx;height: 10rpx;background: #1D64E2;border-radius: 6rpx;position: absolute;left: 50%;margin-left: -26rpx;bottom: 0rpx;}
  548. }
  549. }
  550. }
  551. .nums{width: 332rpx;height: 110rpx;border-radius: 10rpx;display: flex;align-items: center;padding: 0 26rpx;margin-bottom: 24rpx;margin-right: 38rpx;
  552. &:nth-child(2n){margin-right: 0;}
  553. .tit{font-weight: bold;font-size: 30rpx;}
  554. .txt{font-weight: 500;font-size: 24rpx;
  555. text{font-weight: 500;font-size: 40rpx;color: #343434;margin-right: 8rpx;}
  556. }
  557. &.bga{background: #E8EFFF;
  558. .tit{color: #004BF6;}
  559. text{color: #004BF6;}
  560. }
  561. &.bgb{background: #FFECE3;
  562. .tit{color: #FF4E00;}
  563. text{color: #FF4E00;}
  564. }
  565. }
  566. .zfbox{font-weight: bold;font-size:26rpx;color: #222327;margin-bottom: 36rpx;
  567. .znum{font-size: 40rpx;color: #1D64E2;padding: 0 8rpx;}
  568. }
  569. }
  570. }
  571. .picks{
  572. width: 160rpx;height: 56rpx;background-color: rgba(15, 57, 116, 0.5);display: flex;align-items: center;padding: 0 24rpx;box-sizing: border-box;border-radius: 10rpx;
  573. image{width: 16rpx;height: 10rpx;flex: 0 0 auto;}
  574. view{font-weight: bold;font-size: 26rpx;color: #FFFFFF;flex: 1;}
  575. }
  576. .upmore{
  577. image{width: 40rpx;height: 32rpx;margin-bottom: 16rpx;}
  578. view{font-weight: 500;font-size: 26rpx;color: #AAAAAA;}
  579. }
  580. </style>