index.vue 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817
  1. <template>
  2. <view class="consultancies">
  3. <u-navbar :back-text="i18n('Back')" :back-text-style="backStyle" back-icon-color="#fff" title-color="#fff"
  4. :title="i18n('ThinkTankConsulting')" :background="background">
  5. </u-navbar>
  6. <view class="TankConsult">
  7. <!-- 发布需求 -->
  8. <view class="release">
  9. <view class="release-title">{{$t('common.ThinkTankSolution')}}</view>
  10. <u-button type="primary" shape="circle" size="medium" class="custom-style" @tap="demandShow = true">
  11. {{$t('common.ThinkTankPostDemand')}}
  12. </u-button>
  13. </view>
  14. <!-- 咨询服务 -->
  15. <view class="consulting-service">
  16. <view class="config-item">
  17. <view class="item-title">{{$t(consultServe[0].title)}}</view>
  18. <view class="item-cont">{{$t(consultServe[0].label)}}</view>
  19. </view>
  20. <view class="config-item">
  21. <view class="item-title">{{$t(consultServe[1].title)}}</view>
  22. <view class="item-cont">{{$t(consultServe[1].label)}}</view>
  23. </view>
  24. <view class="config-item">
  25. <view class="item-title">{{$t(consultServe[2].title)}}</view>
  26. <view class="item-cont">{{$t(consultServe[2].label)}}</view>
  27. </view>
  28. <view class="config-item">
  29. <view class="item-title">{{$t(consultServe[3].title)}}</view>
  30. <view class="item-cont">{{$t(consultServe[3].label)}}</view>
  31. </view>
  32. </view>
  33. </view>
  34. <!-- 气候治理专栏 -->
  35. <view class="section">
  36. <view class="section-title">{{$i18n.locale == 'zh' ?'气候治理专栏':'Climate Governance Column'}}</view>
  37. <view>
  38. <!-- <view class="uni-margin-wrap">
  39. <swiper class="swiper" circular :interval="interval" :duration="duration"
  40. :indicator-dots="indicatorDots">
  41. <swiper-item v-for="(picInfo,index) in GetPicDetails" :key="index">
  42. <view class="swiper-item" @tap="toggle(picInfo)">
  43. <image v-if="picInfo.photo" :src="websiteUrl+picInfo.photo" class="swiper-item-img">
  44. </image>
  45. <image v-else src='https://www.geidcp.com/img/defalut_weather.db437804.png'
  46. class="swiper-item-img">
  47. </image>
  48. </view>
  49. <view class="bottom-text">{{picInfo.name}}</view>
  50. </swiper-item>
  51. </swiper>
  52. </view> -->
  53. <!-- 图文详情弹窗 -->
  54. <view>
  55. <uni-popup ref="popup1" background-color="#fff" :mask-click="false">
  56. <swiper class="popup-content" :indicator-dots="indicatorDots">
  57. <swiper-item v-for="(item,index) in detailPop" :key="index">
  58. <view class="popup-text">
  59. <text class="popup-title">{{item.name}}</text><br />
  60. </view>
  61. <view>
  62. <image :src="websiteUrl+item.pictureUrl" class="popup-img"></image>
  63. </view>
  64. <view class="popup-text">
  65. <view class="popup-title-content">{{item.attachmentStatement}}</view>
  66. </view>
  67. </swiper-item>
  68. <swiper-item v-if='userInfoDetails'>
  69. <view class="popup-text">
  70. <text class="popup-title">{{infoName}}</text>
  71. </view>
  72. <view class="popup-text-info">
  73. {{$i18n.locale == 'zh' ?'无描述数据...':'No description data...'}}
  74. </view>
  75. </swiper-item>
  76. </swiper>
  77. <view class="close-img" @click="close">
  78. <image src="@/static/user-close.png" alt="" class="close-pic">
  79. </view>
  80. </uni-popup>
  81. </view>
  82. </view>
  83. <scroll-view :scroll-y="true" style="height: 410rpx;">
  84. <view class="sky-detail">
  85. <view class="sky-detail-text" v-for="(skyTitle,index) in GetSkyTitleList " :key="index"
  86. @tap="toAchieveTitle(skyTitle)">
  87. {{skyTitle.title}}
  88. </view>
  89. </view>
  90. </scroll-view>
  91. </view>
  92. <!-- 碳中和 -->
  93. <view class="section">
  94. <view class="section-title">
  95. {{$t('common.ThinkTankHotFocus')}}
  96. <u-icon name="arrow-down" color="#666666" class="arrow-down"></u-icon>
  97. </view>
  98. <scroll-view :scroll-y="true" style="height: 440rpx;">
  99. <view class="hot">
  100. <view class="hot-list" v-for="(hot,index) in HotFocus" :key="index" @tap="toDetails"
  101. :data-key="hot.baseEntityId">
  102. <view class="list-text u-line-1">
  103. {{hot.title}}
  104. </view>
  105. <!-- <view class="time">
  106. <text class="auther">{{ hot.auther }}</text>
  107. <text>{{formatDate(hot.updateDate)}}</text>
  108. </view> -->
  109. </view>
  110. </view>
  111. </scroll-view>
  112. </view>
  113. <!-- 虚拟电厂专栏 -->
  114. <view class="section">
  115. <view class="section-title">
  116. {{$t('common.VirtualPowerPlantColumn')}}
  117. <u-icon name="arrow-down" color="#666666" class="arrow-down"></u-icon>
  118. </view>
  119. <scroll-view :scroll-y="true" style="height: 440rpx;">
  120. <view class="achieve">
  121. <view class="achieve-list" v-for="(infoItem,index) in informationList" :key="index"
  122. @tap="toAchieveDetails(infoItem.baseEntityId)">
  123. {{infoItem.title}}
  124. </view>
  125. </view>
  126. </scroll-view>
  127. </view>
  128. <!-- 智库推荐 -->
  129. <view class="section">
  130. <view class="section-title">
  131. {{$t('common.ThinkTankRecommended')}}
  132. <u-icon name="arrow-down" color="#666666" class="arrow-down"></u-icon>
  133. </view>
  134. <view class="recommend">
  135. <view class="recommend-list" v-for="(recommenItem,index) in RecommendedList" :key="index"
  136. @tap="toViewDetails(recommenItem)">
  137. {{recommenItem.unitName}}
  138. </view>
  139. <!-- <view style="margin-top: 20rpx;">
  140. <u-loadmore :status="status" :load-text="loadText" />
  141. </view> -->
  142. </view>
  143. </view>
  144. <!-- 发布需求 -->
  145. <u-modal v-model="demandShow" :confirm-text="confirmText" :title="modalTitle">
  146. <view class="modal-view">
  147. <view class="modal-title">{{$t('common.ThinkTankRequirements')}}</view>
  148. <view class="tips">https://www.geidcp.com/</view>
  149. <view class="tips">{{$t('common.ThinkTankOpenBrowser')}}</view>
  150. </view>
  151. </u-modal>
  152. <!-- 智库推荐详情 -->
  153. <u-popup v-model="detailShow" mode="bottom" height="60%">
  154. <view class="popupView">
  155. <view class="pop-title">
  156. <text class="title-name">{{member.unitName}}</text>
  157. <text class="title-bq" v-if="$i18n.locale=='zh'&&initData.industry">{{initData.industry}}</text>
  158. <text class="title-bq"
  159. v-if="$i18n.locale=='en'&&initData.industryDict">{{TagEn[parseInt(initData.industryDict)]}}</text>
  160. </view>
  161. <view class="pop-name">
  162. <text class="bold">{{$t('common.place')}}:</text>
  163. <text>
  164. <!-- {{countryDictsMap[initData.unitCountryDict]}} -->
  165. {{initData.unitCountry}}{{initData.unitRegion?'-'+initData.unitRegion:''}}</text>
  166. </view>
  167. <view class="pop-name">
  168. <text class="bold">{{$t('common.DateOfEstablishment')}}:</text>
  169. <text>{{initData.setUpDate?initData.setUpDate:''}}</text>
  170. </view>
  171. <view class="pop-name">
  172. <text class="bold">{{$t('common.LegalRepresentative')}}:</text>
  173. <text>{{initData.corporateName?initData.corporateName:''}}</text>
  174. </view>
  175. <view class="pop-name">
  176. <text class="bold">{{$t('common.OfficialWebsite')}}:</text>
  177. <text>{{initData.officialWebsitePath?initData.officialWebsitePath:''}}</text>
  178. </view>
  179. <view class="pop-name">
  180. <text class="bold">{{$t('common.intro')}}:</text>
  181. <text>{{initData.projectPerformance}}</text>
  182. </view>
  183. </view>
  184. </u-popup>
  185. <!-- 返回顶部 -->
  186. <u-back-top :scroll-top="scrollTop"></u-back-top>
  187. <!-- 轻提示 -->
  188. <u-toast ref="uToast" />
  189. </view>
  190. </template>
  191. <script>
  192. import rfSearchBar from '@/components/rf-search-bar';
  193. export default {
  194. data() {
  195. return {
  196. infoName: null,
  197. userInfoDetails: false,
  198. indicatorDots: true,
  199. interval: 2000,
  200. duration: 500,
  201. detailShow: false,
  202. GetDetails: false,
  203. scrollTop: 0,
  204. demandShow: false,
  205. language: this.$i18n.locale == 'zh' ? 'ZH' : 'EN',
  206. background: {
  207. // backgroundImage: 'linear-gradient(270deg, #4BC0E2 0%, #538BE7 100%)',
  208. backgroundColor: '#1777FE'
  209. },
  210. backStyle: {
  211. color: '#fff'
  212. },
  213. modalTitle: this.$i18n.locale == 'zh' ? '提示' : 'Tips',
  214. confirmText: this.$i18n.locale == 'zh' ? '确认' : 'Confirm',
  215. status: 'loading',
  216. isLoading: true,
  217. loadText: {
  218. loading: this.$i18n.locale == 'zh' ? '加载中' : 'Loading',
  219. nomore: this.$i18n.locale == 'zh' ? '没有更多数据了' : 'No more'
  220. },
  221. consultServe: [{
  222. title: 'common.ThinkTankMarketResearch',
  223. label: 'common.ThinkTankMarketResearchText'
  224. },
  225. {
  226. title: 'common.ThinkTankProjectConsultation',
  227. label: 'common.ThinkTankProjectConsultationText'
  228. },
  229. {
  230. title: 'common.ThinkTankScienceAndTechnologyInnovation',
  231. label: 'common.ThinkTankScienceAndTechnologyInnovationText'
  232. },
  233. {
  234. title: 'common.ThinkTankPlanningStudy',
  235. label: 'common.ThinkTankPlanningStudyText'
  236. },
  237. ],
  238. TagEn: ['Individual Member', 'Groups', 'Scientific Institutions', 'Colleges And Universities',
  239. 'Energy Companies', 'Equipement Manufactures', 'Project Contractors', 'Financial Institutions',
  240. 'Consultation Enterprises', 'Rigidity Of Enterprise', 'Media', 'Logistics Transportation', 'Others'
  241. ],
  242. GetSkyTitleList: [],
  243. GetPicDetails: [],
  244. HotFocus: [],
  245. RecommendedList: [],
  246. informationList: [],
  247. hotList: {
  248. language: ''
  249. },
  250. recomParams: {
  251. pageSize: 10,
  252. pageNo: 1,
  253. language: ''
  254. },
  255. member: [],
  256. initData: {},
  257. countryDicts: [],
  258. countryDictsMap: {},
  259. detailPop: {},
  260. }
  261. },
  262. onLoad() {
  263. this.getHotFocus();
  264. this.getInformationList();
  265. this.getRecommended();
  266. this.getWeatherMgr();
  267. //this.getWeatherinfo();
  268. },
  269. components: {
  270. rfSearchBar
  271. },
  272. onPageScroll(e) {
  273. this.scrollTop = e.scrollTop;
  274. },
  275. methods: {
  276. i18n(data) {
  277. return this.$t('common.' + data);
  278. },
  279. back() {
  280. uni.navigateBack();
  281. },
  282. // 轮播图
  283. changeIndicatorDots(e) {
  284. this.indicatorDots = !this.indicatorDots
  285. },
  286. // changeAutoplay(e) {
  287. // this.autoplay = !this.autoplay
  288. // },
  289. intervalChange(e) {
  290. this.interval = e.target.value
  291. },
  292. durationChange(e) {
  293. this.duration = e.target.value
  294. },
  295. // 图片弹窗
  296. async toggle(e) {
  297. this.infoName = e.name
  298. await this.getWeatherinfoDetail(e.id);
  299. this.$refs.popup1.open(e.id)
  300. },
  301. //文章弹窗
  302. async toAchieveTitle(e) {
  303. // console.log(id);
  304. let key = e.id
  305. // console.log(key);
  306. uni.navigateTo({
  307. url: './weatherListDetail?key=' + key
  308. })
  309. },
  310. change(e) {
  311. this.show = e.show
  312. },
  313. close() {
  314. this.$refs.popup1.close()
  315. },
  316. // 通用跳转
  317. navToSearch() {
  318. this.$mRouter.push({
  319. route: `/pages/index/search/search?data=${JSON.stringify(this.search)}`
  320. });
  321. },
  322. toAchieveDetails(entityId) { //研究成果详情
  323. console.log(entityId);
  324. uni.navigateTo({
  325. url: '../resourceSharing/resultDetails?baseId=' + entityId
  326. });
  327. },
  328. toDetails(e) { //热点聚焦
  329. let key = e.currentTarget.dataset.key;
  330. uni.navigateTo({
  331. url: '../information/components/rankDetail?key=' + key
  332. });
  333. },
  334. async getInformationList() {
  335. const res = await this.$myRequest({
  336. url: '/cms/cmsInformationViews/commonInfoSpecialColumnList/',
  337. data: {
  338. // 'pageSize': '5',
  339. 'pageNo': '1',
  340. 'language': this.$i18n.locale.toUpperCase(),
  341. 'columnName': 'VIRTUAL_POWER_PLANT_VPP'
  342. }
  343. });
  344. // console.log(res);
  345. this.informationList = res.data;
  346. },
  347. async getHotFocus() {
  348. this.hotList.language = this.$i18n.locale.toUpperCase();
  349. console.log('===1===', this.hotList.language);
  350. const res = await this.$myRequest({
  351. url: '/cms/cmsInformationViews/carbonNeutralList/',
  352. data: this.hotList
  353. });
  354. this.HotFocus = res.data;
  355. console.log(this.HotFocus, '------2222------');
  356. },
  357. async getRecommended() { //智库推荐
  358. this.recomParams.language = this.$i18n.locale.toUpperCase();
  359. const res = await this.$myRequest({
  360. url: '/project/baseThinkTankInfos',
  361. data: this.recomParams
  362. });
  363. // console.log(res);
  364. this.RecommendedList = res.data.baseThinkTankInfos;
  365. // if(this.recomParams.pageNo <= res.data.page.totalPage) {
  366. // this.RecommendedList = this.RecommendedList.concat(res.data.baseThinkTankInfos);
  367. // this.recomParams.pageNo += 1;
  368. // this.isLoading = true;
  369. // }else {
  370. // this.isLoading = false;
  371. // this.status = 'nomore';
  372. // }
  373. },
  374. async getCountry() {
  375. const res = await this.$myRequest({
  376. url: '/sys/sysDicts',
  377. data: {
  378. type: this.$i18n.locale == 'zh' ? 'UNIT_COUNTRY_DICT' : 'unit_country_dict_en'
  379. }
  380. });
  381. // console.log(res.data[0]);
  382. this.countryDicts = res.data[0];
  383. for (var i = 0; i < this.countryDicts.length; i++) {
  384. this.countryDictsMap[this.countryDicts[i].value] = this.countryDicts[i].label ? this.countryDicts[i].label : this.countryDicts[i];
  385. }
  386. },
  387. toViewDetails(data) {
  388. this.getMemberUnitFlag(data.baseEntityId);
  389. this.member = data;
  390. this.getMemberUnit(data.baseEntityId);
  391. // console.log(data)
  392. },
  393. async getMemberUnitFlag(unitId) {
  394. const res = await this.$myRequest({
  395. url: '/project/baseUnitViews/getMemberUnitFlag',
  396. data: {
  397. baseEntityId: unitId,
  398. language: this.$i18n.locale.toUpperCase()
  399. }
  400. });
  401. if (res.data.flag) {
  402. this.detailShow = true;
  403. } else {
  404. this.$refs.uToast.show({
  405. title: this.$i18n.locale == 'zh' ? '暂无数据' : 'No data available',
  406. type: 'warning'
  407. });
  408. this.detailShow = false;
  409. }
  410. },
  411. async getMemberUnit(unitId) {
  412. const res = await this.$myRequest({
  413. url: '/project/baseUnitViews/getMemberUnit',
  414. data: {
  415. baseEntityId: unitId,
  416. language: this.$i18n.locale.toUpperCase()
  417. }
  418. });
  419. if (res.data) {
  420. this.initData = res.data.baseUnitView || [];
  421. this.initData.unitLabel = this.initData.unitLabel ? this.initData.unitLabel.split(',') : "";
  422. this.initData.setUpDate = this.formatDate(this.initData.setUpDate, 'YYYY');
  423. if (this.$i18n.locale == "zh") {
  424. this.initData.unitCountry = res.data.baseUnitView.unitCountry;
  425. } else if (this.$i18n.locale == "en") {
  426. this.initData.unitCountry = res.data.baseUnitView.unitCountryDict;
  427. }
  428. } else {
  429. this.initData = [];
  430. }
  431. },
  432. async getWeatherMgr() { // 气候治理文章
  433. const res = await this.$myRequest({
  434. url: '/cms/cmsInformationEntitys/weatherArticle',
  435. data: {
  436. "language": this.language,
  437. "pageNo": "1",
  438. "pageSize": "999"
  439. }
  440. });
  441. // console.log(res);
  442. this.GetSkyTitleList = res.data.weatherArticle
  443. },
  444. async getWeatherinfo() { // 气候治理轮播图
  445. const res = await this.$myRequest({
  446. url: '/cms/weatherForPictureInfos/pictureAndGraph',
  447. data: {
  448. "language": this.language,
  449. "pageNo": "1",
  450. "pageSize": "20"
  451. }
  452. });
  453. // console.log(res);
  454. this.GetPicDetails = res.data.pictureAndGraph
  455. console.log('-----1----', this.GetPicDetails[0].photo);
  456. },
  457. async getWeatherinfoDetail(id) { // 气候治理轮播图详情
  458. this.detailPop = {};
  459. const res = await this.$myRequest({
  460. url: '/cms/weatherForPictureInfos/pictureAndGraphDetail',
  461. data: {
  462. "language": this.language,
  463. "pageNo": "1",
  464. "pageSize": "1",
  465. "id": id
  466. }
  467. });
  468. // console.log(res)
  469. this.detailPop = res.data.pictureAndGraphDetail
  470. console.log(this.detailPop);
  471. if (this.detailPop.length > 0) {
  472. this.userInfoDetails = false
  473. } else {
  474. this.userInfoDetails = true
  475. }
  476. console.log(this.userInfoDetails);
  477. },
  478. }
  479. }
  480. </script>
  481. <style lang="scss" scoped>
  482. .custom-style {
  483. background: linear-gradient(180deg, #F7B500 0%, #F7B500 100%);
  484. width: 250rpx;
  485. font-size: 34rpx;
  486. }
  487. /deep/ .u-model__title {
  488. font-size: 32rpx;
  489. }
  490. .modal-view {
  491. padding: 30rpx;
  492. text-align: center;
  493. .modal-title {
  494. font-size: 32rpx;
  495. }
  496. .tips {
  497. margin-top: 10rpx;
  498. font-size: 28rpx;
  499. }
  500. }
  501. .consultancies {
  502. .TankConsult {
  503. padding: 50rpx 30rpx 30rpx;
  504. background: url(../../static/img/consultancies/zk-new.jpg);
  505. background-size: 100% 100%;
  506. }
  507. .release {
  508. text-align: center;
  509. color: #FFFFFF;
  510. .release-title {
  511. font-size: 34rpx;
  512. padding: 50rpx 0;
  513. }
  514. }
  515. .consulting-service {
  516. margin-top: 30rpx;
  517. border-radius: 20rpx;
  518. padding: 50rpx 30rpx 30rpx;
  519. background-color: #FFFFFF;
  520. .config-item {
  521. .item-title {
  522. color: #333333;
  523. font-size: 34rpx;
  524. font-weight: bold;
  525. position: relative;
  526. padding-left: 20rpx;
  527. }
  528. .item-title:before {
  529. width: 8rpx;
  530. height: 34rpx;
  531. content: '';
  532. position: absolute;
  533. left: 0;
  534. top: 8rpx;
  535. }
  536. .item-cont {
  537. font-size: 30rpx;
  538. color: #666666;
  539. padding: 24rpx 0;
  540. }
  541. }
  542. .config-item:nth-child(1) .item-title:before {
  543. background-color: #e48742;
  544. }
  545. .config-item:nth-child(2) .item-title:before {
  546. background-color: #4cacf9;
  547. }
  548. .config-item:nth-child(3) .item-title:before {
  549. background-color: #efbe2d;
  550. }
  551. .config-item:nth-child(4) .item-title:before {
  552. background-color: #56cab9;
  553. }
  554. }
  555. .section {
  556. margin-top: 20rpx;
  557. background-color: #FFFFFF;
  558. padding: 20rpx 30rpx;
  559. .section-title {
  560. color: #333333;
  561. font-size: 34rpx;
  562. font-weight: bold;
  563. position: relative;
  564. padding-left: 20rpx;
  565. .arrow-down {
  566. position: absolute;
  567. right: 0;
  568. top: 8rpx;
  569. }
  570. }
  571. .uni-margin-wrap {
  572. width: 100%;
  573. margin-top: 10rpx;
  574. .swiper {
  575. width: 100%;
  576. }
  577. .swiper-item {
  578. display: block;
  579. height: 300rpx;
  580. line-height: 300rpx;
  581. text-align: center;
  582. .swiper-item-img {
  583. width: 88%;
  584. height: 300rpx;
  585. border-radius: 20rpx;
  586. margin-left: 6%;
  587. }
  588. }
  589. .bottom-text {
  590. background-color: #666666;
  591. font-size: 22px;
  592. width: 88%;
  593. margin-left: 6%;
  594. height: 70rpx;
  595. line-height: 70rpx;
  596. border-radius: 0 0 20rpx 20rpx;
  597. opacity: 0.6;
  598. color: #fff;
  599. padding: 0 15rpx 0 30rpx;
  600. overflow: hidden;
  601. white-space: nowrap;
  602. text-overflow: ellipsis;
  603. transform: translateY(-100%);
  604. }
  605. }
  606. .popup-content {
  607. height: 620rpx;
  608. width: 600rpx;
  609. background-color: #fff;
  610. border-radius: 20rpx;
  611. .popup-img {
  612. width: 600rpx;
  613. height: 330rpx;
  614. }
  615. .popup-text {
  616. .popup-title {
  617. color: #333333;
  618. font-size: 36rpx;
  619. font-weight: bold;
  620. margin-left: 2%;
  621. }
  622. .popup-title-content {
  623. color: #333;
  624. width: 96%;
  625. margin-left: 2%;
  626. letter-spacing: 4rpx;
  627. // padding: 0 10rpx;
  628. }
  629. }
  630. .popup-text-info {
  631. text-align: center;
  632. font-size: 20px;
  633. color: #666666;
  634. height: 500rpx;
  635. line-height: 500rpx;
  636. }
  637. }
  638. .close-img {
  639. height: 100rpx;
  640. width: 100rpx;
  641. text-align: center;
  642. line-height: 100rpx;
  643. margin-left: 50%;
  644. transform: translateX(-50%);
  645. margin-top: 20rpx;
  646. .close-pic {
  647. width: 100%;
  648. height: 100%;
  649. }
  650. }
  651. .section-title:before {
  652. width: 10rpx;
  653. height: 34rpx;
  654. content: '';
  655. position: absolute;
  656. left: 0;
  657. top: 8rpx;
  658. background-color: #6DD400;
  659. background-color: #6DD400;
  660. }
  661. .sky-detail {
  662. margin-top: 10rpx;
  663. white-space: nowrap;
  664. .sky-detail-text {
  665. padding: 20rpx 0;
  666. border-bottom: 1px solid #F1F1F1;
  667. font-size: 32rpx;
  668. text-overflow: ellipsis;
  669. overflow: hidden;
  670. }
  671. .sky-detail-text:last-child {
  672. border-bottom: none;
  673. }
  674. }
  675. }
  676. .achieve {
  677. margin-top: 10rpx;
  678. white-space: nowrap;
  679. .achieve-list {
  680. padding: 20rpx 0;
  681. border-bottom: 1px solid #F1F1F1;
  682. font-size: 32rpx;
  683. text-overflow: ellipsis;
  684. overflow: hidden;
  685. }
  686. .achieve-list:last-child {
  687. border-bottom: none;
  688. }
  689. }
  690. .hot {
  691. margin-top: 10rpx;
  692. white-space: nowrap;
  693. .hot-list {
  694. padding: 20rpx 0;
  695. border-bottom: 1px solid #F1F1F1;
  696. .list-text {
  697. font-size: 32rpx;
  698. color: #333333;
  699. text-overflow: ellipsis;
  700. overflow: hidden;
  701. }
  702. .time {
  703. margin-top: 15rpx;
  704. color: #666666;
  705. font-size: 28rpx;
  706. .auther {
  707. margin-right: 30rpx;
  708. }
  709. }
  710. }
  711. .hot-list:last-child {
  712. border-bottom: none;
  713. }
  714. }
  715. .recommend {
  716. margin-top: 10rpx;
  717. .recommend-list {
  718. padding: 15rpx;
  719. box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1);
  720. font-size: 32rpx;
  721. color: #333333;
  722. margin-top: 15rpx;
  723. text-align: left;
  724. background-color: #FFFFFF;
  725. border-radius: 10rpx;
  726. }
  727. }
  728. }
  729. .popupView {
  730. padding: 20upx 30upx;
  731. .pop-title {
  732. display: flex;
  733. justify-content: space-between;
  734. .title-name {
  735. font-size: 34upx;
  736. font-weight: 700;
  737. color: #333333;
  738. }
  739. .title-bq {
  740. font-size: 30upx;
  741. background-color: #fef0f0;
  742. border: 1px solid #fde2e2;
  743. color: #f56c6c;
  744. padding: 10upx;
  745. border-radius: 6upx;
  746. }
  747. }
  748. .pop-name {
  749. font-size: 30upx;
  750. color: #333333;
  751. line-height: 50upx;
  752. .bold {
  753. font-weight: bold;
  754. }
  755. }
  756. }
  757. </style>