index.vue 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951
  1. <template>
  2. <view class="content">
  3. <!-- 轮播 -->
  4. <view class="carousel-section">
  5. <swiper class="carousel" :autoplay="true" :interval="3000" :duration="1000">
  6. <swiper-item v-for="item in carouselList" :key="item.id"><image :src="item.pic"></image></swiper-item>
  7. </swiper>
  8. </view>
  9. <!-- 分类 -->
  10. <view class="cate-section">
  11. <view class="cate-item" @click="tocontribution">
  12. <image src="../../static/icon/icon1.png" style="width: 77rpx;height: 68rpx;"></image>
  13. <text>器官捐献</text>
  14. </view>
  15. <!-- <a href="http://yyhszh.yygrwhg.com/willsoft/deyy/MobileView_look.aspx?news_id=1" title="爱心捐赠">
  16. <view class="cate-item">
  17. <image src="../../static/icon/icon3.png" style="width: 87rpx;height: 64rpx;"></image>
  18. <text>爱心捐赠</text>
  19. </view>
  20. </a> -->
  21. <view class="cate-item" @click="toapplic">
  22. <view class="cate-item">
  23. <image src="../../static/icon/icon2.png" style="width: 83rpx;height: 64rpx;"></image>
  24. <text>造血干细胞捐献</text>
  25. </view>
  26. </view>
  27. <!-- <navigator 知识>
  28. <view class="cate-item">
  29. <image src="../../static/img/icon.png"></image>
  30. <a title="器官捐赠" href="https://register.codac.org.cn/wx/html/notice.htm">器官捐赠</a>
  31. </view>
  32. </navigator> pages/applic/tohelpActi organ-->
  33. <!-- <a href="https://register.codac.org.cn/wx/html/notice.htm" title="器官捐献"> -->
  34. <view class="cate-item" @click="toOrgan">
  35. <image src="../../static/icon/icon3.png" style="width: 87rpx;height: 64rpx;"></image>
  36. <text>普及培训报名</text>
  37. </view>
  38. <!-- </a> -->
  39. <view>
  40. <view class="cate-item" @click="tohelpActi">
  41. <image src="../../static/icon/icon4.png" style="width: 84rpx;height: 67rpx;"></image>
  42. <text>志愿者登记</text>
  43. </view>
  44. </view>
  45. </view>
  46. <!-- 红会科普 -->
  47. <view class="science-section">
  48. <view class="science-title">
  49. <image src="../../static/img/wings-left.png" mode=""></image>
  50. <view class="title">红会科普</view>
  51. <image src="../../static/img/wings-right.png" mode=""></image>
  52. </view>
  53. <scroll-view class="science-box" scroll-x>
  54. <view class="science-content">
  55. <view class="science-item" v-for="(item, index) in science" :key="index" @click="Jump(item)">
  56. <image :src="item.image_input[0]" mode=""></image>
  57. <view class="article-title word1_ellipsis">{{ item.title }}</view>
  58. <view class="article-content">{{ item.synopsis }}</view>
  59. </view>
  60. </view>
  61. </scroll-view>
  62. <navigator class="science-more" url="/pages/applic/science">
  63. 查看更多
  64. <image src="../../static/icon/moreRight.png" mode=""></image>
  65. <image src="../../static/icon/moreRight.png" mode=""></image>
  66. </navigator>
  67. </view>
  68. <!-- sos急救系统 -->
  69. <view class="system">
  70. <view class="system-title">
  71. <view class="img"><image src="../../static/img/wings-left.png"></image></view>
  72. <view class="title" @click="tolocation">救在身边</view>
  73. <view class="img"><image src="../../static/img/wings-right.png"></image></view>
  74. </view>
  75. <view class="system-map">
  76. <view class="map-box" @click="tolocation"><image src="../../static/img/map.jpg" mode=""></image></view>
  77. </view>
  78. </view>
  79. <view class="list-box">
  80. <view class="system-title">
  81. <view class="img"><image src="../../static/img/wings-left.png"></image></view>
  82. <view class="title" @click="tolocation">救护站</view>
  83. <view class="img"><image src="../../static/img/wings-right.png"></image></view>
  84. </view>
  85. <view id="container">
  86. <map
  87. class="map-box"
  88. id="map"
  89. show-location
  90. :markers="marker"
  91. :scale="scale"
  92. :latitude="latitude4"
  93. :longitude="longitude4"
  94. ref="map"
  95. style="height: 450rpx"
  96. @markertap="markertap"
  97. ></map>
  98. </view>
  99. <view class="">
  100. <view class="list-tpl flex" @click="openAddress(item)" v-for="(item, index) in AEDList" :key="item.id">
  101. <view class="list-left">
  102. <view class="number">{{ index + 1 }}</view>
  103. <view class="info">
  104. <view class="title">{{ item.introduction }}</view>
  105. <view class="addr">地址:{{ item.address }}</view>
  106. </view>
  107. </view>
  108. <view class="image">
  109. <image src="../../static/img/img10.png"></image>
  110. <view class="tip">导航</view>
  111. </view>
  112. </view>
  113. <!-- <uni-load-more :status="loadingType"></uni-load-more> -->
  114. </view>
  115. </view>
  116. <uni-popup ref="popup" type="bottom" @click="close">
  117. <view class="popup_row">
  118. <view class="rows">
  119. <view class="rows-item" @click="toGaodeMap">高德地图</view>
  120. <view class="rows-item" @click="tobaiDuMap">百度地图</view>
  121. <view class="rows-item" @click="totengxunMap">腾讯地图</view>
  122. <!-- <view class="rows-item" @click="toGoogleMap">
  123. Google地图
  124. </view> -->
  125. <!-- <view class="row-1"><image class="first_aid" src="../../static/img/img03.jpg"></image></view> -->
  126. <!-- <view class="row-2">扫码进入急救平台</view> -->
  127. </view>
  128. </view>
  129. </uni-popup>
  130. <!-- <view class="base-map">
  131. <view class="system-title">
  132. <view class="img">
  133. <image src="../../static/img/wings-left.png"></image>
  134. </view>
  135. <view class="title">江夏区红十字会</view>
  136. <view class="img">
  137. <image src="../../static/img/wings-right.png"></image>
  138. </view>
  139. </view>
  140. <map :latitude="baseLatitude" :longitude="baseLongitude" :markers="baseMarker" style="height: 450rpx;" scale=20></map>
  141. </view> -->
  142. </view>
  143. </template>
  144. <script>
  145. import {
  146. loadIndexs,
  147. bannerlist,
  148. getListAED,
  149. getDistance
  150. } from '@/api/index.js';
  151. import {
  152. saveUrl,
  153. interceptor
  154. } from '@/utils/loginUtils.js';
  155. import {
  156. mapState,
  157. mapMutations
  158. } from 'vuex';
  159. import {
  160. userinfo
  161. } from '@/api/user.js';
  162. import uniPopup from '@/components/uni-popup/uni-popup.vue';
  163. import uniLoadMore from '@/components/uni-load-more/uni-load-more.vue';
  164. import {
  165. getLoca
  166. } from '@/utils/wxAuthorized.js';
  167. import {
  168. getcomAddress
  169. } from '@/api/index.js';
  170. export default {
  171. components: {
  172. uniPopup,
  173. uniLoadMore
  174. },
  175. data() {
  176. return {
  177. carouselList: [], //轮播
  178. science: [], //文章列表
  179. page: 1,
  180. limit: 10,
  181. AEDList: [],
  182. latitude2: '',
  183. longitude2: '',
  184. latitude4: '',
  185. longitude4: '',
  186. address: '',
  187. loadingType: 'more',
  188. markerList: [],
  189. marker: [],
  190. longitude: '121.15829821166992',
  191. latitude: "30.044394499237708",
  192. longitude1: '120.553638',
  193. latitude1: "30.547011",
  194. scale: '12', //地图缩放程度
  195. scale1: '15',
  196. showbox: false,
  197. showTEXT: false,
  198. addressData: {
  199. name: '',
  200. mobile: '',
  201. latitude: 0, //纬度
  202. longitude: 0, //经度
  203. address: {
  204. province: '',
  205. city: '',
  206. district: '',
  207. detail: '',
  208. },
  209. area: '',
  210. default: false
  211. },
  212. baseLongitude: 114.316738,
  213. baseLatitude: 30.353495,
  214. baseMarker: [{ id: 'baseAddr',latitude: 30.353495, longitude: 114.316738, iconPath: '../../static/img/location-icon.png' }]
  215. };
  216. },
  217. onShow() {
  218. saveUrl()
  219. // let token = uni.getStorageSync('token');
  220. console.log(11, this);
  221. if (!this.hasLogin) {
  222. // 登录拦截
  223. // interceptor();
  224. uni.showModal({
  225. title: '登录',
  226. content: '您未登录,是否马上登陆?',
  227. success: e => {
  228. if (e.confirm) {
  229. interceptor();
  230. }
  231. },
  232. fail: e => {
  233. console.log(e);
  234. }
  235. });
  236. } else {
  237. this.loadData();
  238. }
  239. },
  240. onLoad() {
  241. // uni.showModal({
  242. // content: '请选择您当前位置',
  243. // success: res => {
  244. // if (res.confirm) {
  245. // this.chooseAddress()
  246. // }
  247. // }
  248. // })
  249. saveUrl()
  250. let obj = this;
  251. try {
  252. let locationAddress
  253. // #ifdef H5
  254. let wxOjb = require('jweixin-module');
  255. locationAddress = wxOjb.getLocation;
  256. // #endif
  257. // #ifdef MP
  258. locationAddress = uni.getLocation;
  259. // #endif
  260. // #ifdef H5
  261. wxOjb.ready(() => {
  262. console.log('加载完毕注册事件');
  263. locationAddress({
  264. type: 'wgs84',
  265. success: function(res) {
  266. console.log('获取经纬度', res);
  267. obj.longitude4 = res.longitude
  268. obj.latitude4 = res.latitude
  269. obj.marker = [{
  270. longitude: res.longitude,
  271. latitude: res.latitude,
  272. iconPath: '/static/img/img19.png',
  273. width: '45',
  274. height: '45',
  275. }, ]
  276. obj.loadData();
  277. },
  278. fail(e) {
  279. console.log('失败', e);
  280. window.location.reload();
  281. }
  282. });
  283. })
  284. // #endif
  285. // #ifdef MP
  286. locationAddress({
  287. type: 'wgs84',
  288. success: function(res) {
  289. console.log('获取经纬度', res);
  290. obj.longitude4 = res.longitude
  291. obj.latitude4 = res.latitude
  292. obj.marker = [{
  293. longitude: res.longitude,
  294. latitude: res.latitude,
  295. iconPath: '/static/img/img19.png',
  296. width: '45',
  297. height: '45',
  298. }]
  299. obj.loadData();
  300. },
  301. fail(e) {
  302. console.log('失败', e);
  303. window.location.reload();
  304. }
  305. });
  306. // #endif
  307. } catch (e) {
  308. let locationAddress
  309. // #ifdef H5
  310. let wxOjb = require('jweixin-module');
  311. locationAddress = wxOjb.getLocation;
  312. // #endif
  313. // #ifdef MP
  314. locationAddress = uni.getLocation;
  315. // #endif
  316. // #ifdef H5
  317. wxOjb.ready(() => {
  318. console.log('加载完毕注册事件');
  319. locationAddress({
  320. type: 'wgs84',
  321. success: function(res) {
  322. console.log('获取经纬度', res);
  323. obj.longitude4 = res.longitude
  324. obj.latitude4 = res.latitude
  325. obj.loadData();
  326. },
  327. fail(e) {
  328. console.log('失败', e);
  329. window.location.reload();
  330. }
  331. });
  332. })
  333. // #endif
  334. // #ifdef MP
  335. locationAddress({
  336. type: 'wgs84',
  337. success: function(res) {
  338. console.log('获取经纬度', res);
  339. obj.longitude4 = res.longitude
  340. obj.latitude4 = res.latitude
  341. obj.loadData();
  342. },
  343. fail(e) {
  344. console.log('失败', e);
  345. window.location.reload();
  346. }
  347. });
  348. // #endif
  349. }
  350. },
  351. computed: {
  352. ...mapState('user', ['userInfo', 'baseURL', 'hasLogin'])
  353. },
  354. // 下拉加载
  355. onReachBottom() {
  356. this.loadData();
  357. },
  358. methods: {
  359. ...mapMutations('user', ['setUserInfo']),
  360. tocontribution() {
  361. uni.navigateTo({
  362. // url: "/pages/applic/contribution"
  363. url: "/pages/form/applicationForm"
  364. })
  365. },
  366. // 调用高德
  367. toGaodeMap() {
  368. let latitude = this.latitude2
  369. let longitude = this.longitude2
  370. let address = this.address
  371. console.log('选择高德', latitude, longitude, address)
  372. // window.location.href = 'https://uri.amap.com/marker?position=30.537043,120.567191&name=浙江省嘉兴市桐乡市高桥镇高桥大道51号'
  373. window.location.href = `https://uri.amap.com/marker?position=${longitude},${latitude}&name=${address}`
  374. // window.location.href = `http://uri.amap.com/navigation?from=114.02597366,22.54605355&to=114.029243,22.609562&mode=car&src=nyx_super`
  375. // http://uri.amap.com/navigation?from=" + fromLongitude + "," + fromLatitude + "&to="+ longitude + "," + latitude + "&mode=car&src=nyx_super
  376. },
  377. // 调用腾讯
  378. totengxunMap() {
  379. let latitude = this.latitude2
  380. let longitude = this.longitude2
  381. let address = this.address
  382. console.log('选择腾讯', latitude, longitude)
  383. window.location.href = `http://apis.map.qq.com/uri/v1/marker?marker=coord:${latitude},${longitude};addr:${address}`;
  384. },
  385. // 调用百度
  386. tobaiDuMap() {
  387. let latitude = this.latitude2
  388. let longitude = this.longitude2
  389. let latitude6 = this.latitude4
  390. let longitude6 = this.longitude4
  391. let address = this.address
  392. console.log('选择百度', latitude, longitude)
  393. console.log('获取当前经纬度', latitude6, longitude6)
  394. window.location.href =
  395. `http://api.map.baidu.com/direction?origin=latlng:${latitude6},${longitude6}|name:我的位置&destination=${latitude},${longitude}&mode=driving&region=${ address }&output=html&src=webapp.baidu.openAPIdemo`
  396. //`bdapp://map/navi?location=${longitude},${latitude}&coord_type=gc02&title=${address}&content=${address}&output=html&src=andr.baidu.openAPIdemo `
  397. },
  398. // 调用谷歌
  399. toGoogleMap() {
  400. let latitude = this.latitude2
  401. let longitude = this.longitude2
  402. console.log('选择谷歌', latitude, longitude)
  403. },
  404. tolocation() {
  405. uni.navigateTo({
  406. url: "/pages/applic/location"
  407. })
  408. },
  409. toapplic() {
  410. uni.navigateTo({
  411. url: "/pages/applic/appliSystem"
  412. })
  413. },
  414. tohelpActi() {
  415. uni.navigateTo({
  416. // url: "/pages/applic/tohelpActi"
  417. url: "/pages/form/tovolApply"
  418. })
  419. },
  420. toOrgan() {
  421. console.log('kepuxingbaoming')
  422. uni.navigateTo({
  423. url: "/pages/train/index"
  424. })
  425. },
  426. // 点击图标
  427. markertap(e) {
  428. console.log(e.target.markerId);
  429. this.$refs.popup.open();
  430. let obj = this;
  431. for (let i = 0; i < obj.marker.length; i++) {
  432. if (e.target.markerId == obj.marker[i].id) {
  433. obj.latitude2 = obj.marker[i].latitude;
  434. obj.longitude2 = obj.marker[i].longitude;
  435. obj.address = obj.marker[i].address;
  436. // uni.showModal({
  437. // title: '坐标',
  438. // content: JSON.stringify(obj.marker[i]),
  439. // success() {
  440. // uni.showModal({
  441. // title: '成功',
  442. // content: obj.marker[i].latitude
  443. // })
  444. // }
  445. // })
  446. }
  447. }
  448. },
  449. loadData() {
  450. let obj = this;
  451. console.log('打印当前经纬度', obj.longitude4, obj.latitude4)
  452. userinfo({}).then(({
  453. data
  454. }) => {
  455. obj.setUserInfo(data);
  456. loadIndexs({}).then(({
  457. data
  458. }) => {
  459. obj.carouselList = data.banner; //轮播图
  460. bannerlist().then(({
  461. data
  462. }) => {
  463. console.log(data);
  464. obj.science = data;
  465. });
  466. });
  467. });
  468. if (obj.loadingType === 'noMore') {
  469. //防止重复加载
  470. return;
  471. }
  472. // 修改当前对象状态为加载中
  473. obj.loadingType = 'loading';
  474. // getListAED({
  475. // page: obj.page,
  476. // limit: obj.limit
  477. // }).then(({
  478. // data
  479. // }) => {
  480. // console.log(data, 999)
  481. // // obj.AEDList = data
  482. // obj.AEDList = obj.AEDList.concat(data);
  483. // obj.markerList = data
  484. // obj.page++;
  485. // if (obj.limit == data.length) {
  486. // obj.loadingType = 'more';
  487. // } else {
  488. // obj.loadingType = 'noMore';
  489. // }
  490. // })
  491. getDistance({
  492. lng1: obj.longitude4,
  493. lat1: obj.latitude4
  494. }).then(({
  495. data
  496. }) => {
  497. console.log(data, 980)
  498. obj.AEDList = data
  499. obj.AEDList = data.slice(0, 5)
  500. let arr = data.map(item => ({
  501. latitude: item.latitude,
  502. longitude: item.longitude,
  503. iconPath: '/static/img/img014.png',
  504. width: '35',
  505. height: '35',
  506. id: item.id,
  507. address: item.address
  508. }))
  509. obj.marker = obj.marker.concat(arr)
  510. obj.marker = obj.marker.slice(0, 6)
  511. // uni.showModal({
  512. // title: '提示',
  513. // content: JSON.stringify(obj.marker)
  514. // })
  515. })
  516. },
  517. // 选择当前位置
  518. // chooseAddress() {
  519. // console.log('233')
  520. // let obj = this;
  521. // uni.chooseLocation({
  522. // success: function(res) {
  523. // console.log(res)
  524. // obj.addressData.area = res.name;
  525. // console.log('位置名称:' + res.name);
  526. // console.log('详细地址:' + res.address);
  527. // console.log('经度:' + res.longitude);
  528. // console.log('纬度:' + res.latitude);
  529. // obj.addressData.latitude = res.latitude;
  530. // obj.addressData.longitude = res.longitude;
  531. // obj.addressDetail = res.address;
  532. // console.log('common_address123',obj.addressDetail )
  533. // console.log('latitude123',obj.addressData.latitude )
  534. // console.log('longitude123',obj.addressData.longitude )
  535. // getcomAddress({
  536. // common_address: obj.addressDetail,
  537. // longitude: obj.addressData.longitude,
  538. // latitude: obj.addressData.latitude
  539. // }).then(data => {
  540. // console.log(333)
  541. // console.log(data);
  542. // if (data.status == 200) {
  543. // obj.$api.msg('保存成功')
  544. // }
  545. // })
  546. // }
  547. // });
  548. // },
  549. // 导航
  550. openAddress(item) {
  551. let obj = this
  552. obj.latitude2 = item.latitude
  553. obj.longitude2 = item.longitude
  554. obj.address = item.address
  555. this.$refs.popup.open();
  556. },
  557. Jump(item) {
  558. // console.log(item);
  559. if (item.url != '') {
  560. window.open(item.url);
  561. return
  562. }
  563. uni.navigateTo({
  564. url: "/pages/applic/info?id=" + item.id
  565. })
  566. },
  567. open() {
  568. this.$refs.popup.open();
  569. },
  570. close() {
  571. this.$refs.popup.close();
  572. }
  573. }
  574. };
  575. </script>
  576. <style lang="scss">
  577. a {
  578. text-decoration: none;
  579. color: #5f5f5f;
  580. }
  581. .content {
  582. // line-height: 1;
  583. background-color: #ffabab;
  584. // padding-bottom: 60rpx;
  585. }
  586. .popup_row {
  587. width: 100%;
  588. height: 500rpx;
  589. background-color: #ffffff;
  590. border-radius: 20rpx;
  591. display: flex;
  592. justify-content: center;
  593. align-items: center;
  594. .rows {
  595. width: 100%;
  596. padding: 0 24rpx;
  597. .rows-item {
  598. height: 80rpx;
  599. line-height: 80rpx;
  600. text-align: center;
  601. width: 100%;
  602. font-size: 32rpx;
  603. color: #303133;
  604. // border-bottom: 1rpx solid #f0f0f0;
  605. }
  606. // .row-1 {
  607. // margin: auto;
  608. // .first_aid {
  609. // width: 300rpx;
  610. // height: 300rpx;
  611. // }
  612. // }
  613. // .row-2 {
  614. // font-size: 38rpx;
  615. // margin-top: 20rpx;
  616. // }
  617. }
  618. }
  619. .content {
  620. background-color: #f8f8f8;
  621. height: 100%;
  622. /* 头部 轮播图 */
  623. .carousel-section {
  624. // padding-top: 10px;
  625. overflow: hidden;
  626. .carousel {
  627. width: 100%;
  628. height: 398rpx;
  629. .carousel-item {
  630. width: 100%;
  631. height: 100%;
  632. padding-left: 30rpx;
  633. padding-right: 30rpx;
  634. overflow: hidden;
  635. }
  636. image {
  637. width: 100%;
  638. height: 398rpx;
  639. }
  640. }
  641. }
  642. // 分类
  643. .cate-section {
  644. display: flex;
  645. justify-items: center;
  646. align-items: center;
  647. justify-content: space-around;
  648. height: 214rpx;
  649. width: 750rpx;
  650. background-color: #ffffff;
  651. .cate-item {
  652. display: flex;
  653. flex-direction: column;
  654. justify-content: center;
  655. align-items: center;
  656. color: #5f5f5f;
  657. font-size: 26rpx;
  658. image {
  659. height: 88rpx;
  660. width: 88rpx;
  661. margin-bottom: 14rpx;
  662. border-radius: 50%;
  663. opacity: 0.7;
  664. }
  665. }
  666. }
  667. // 红会科普
  668. .science-section {
  669. width: 100%;
  670. background-color: #ffffff;
  671. margin-top: 18rpx;
  672. padding-top: 30rpx;
  673. .science-title {
  674. display: flex;
  675. justify-content: center;
  676. align-items: center;
  677. padding-bottom: 22rpx;
  678. .title {
  679. width: 285rpx;
  680. height: 64rpx;
  681. background-color: #ca121e;
  682. border-radius: 32rpx;
  683. color: #ffffff;
  684. font-size: 32rpx;
  685. line-height: 64rpx;
  686. text-align: center;
  687. }
  688. image {
  689. width: 68rpx;
  690. height: 43rpx;
  691. margin-left: 16rpx;
  692. margin-right: 16rpx;
  693. }
  694. }
  695. .science-box {
  696. padding-left: 15rpx;
  697. padding-right: 15rpx;
  698. padding-bottom: 20rpx;
  699. border-bottom: 1rpx solid #f0f0f0;
  700. white-space: nowrap;
  701. display: flex;
  702. width: 100%;
  703. // .uni-scroll-view-content{
  704. // display: flex;
  705. // }
  706. .science-content {
  707. // width: 100%;
  708. // display: flex;
  709. display: -webkit-box;
  710. .science-item {
  711. margin-right: 24rpx;
  712. width: 198rpx;
  713. display: flex;
  714. flex-direction: column;
  715. align-items: center;
  716. text-align: center;
  717. image {
  718. width: 100%;
  719. height: 145rpx;
  720. }
  721. .article-title {
  722. width: 198rpx;
  723. color: #333;
  724. font-size: 25rpx;
  725. padding-top: 20rpx;
  726. padding-bottom: 16rpx;
  727. font-weight: 900;
  728. }
  729. .article-content {
  730. width: 198rpx;
  731. color: #999999;
  732. font-size: 18rpx;
  733. overflow: hidden;
  734. text-overflow: ellipsis;
  735. display: -webkit-box;
  736. word-break: break-all;
  737. -webkit-box-orient: vertical;
  738. -webkit-line-clamp: 2;
  739. }
  740. }
  741. }
  742. }
  743. .science-more {
  744. display: flex;
  745. justify-content: center;
  746. align-items: center;
  747. color: #cb131c;
  748. font-size: 30rpx;
  749. padding-top: 18rpx;
  750. padding-bottom: 18rpx;
  751. image {
  752. width: 20rpx;
  753. height: 27rpx;
  754. }
  755. }
  756. }
  757. // sos急救中心
  758. .system {
  759. width: 100%;
  760. background-color: #ffffff;
  761. margin-top: 18rpx;
  762. padding-top: 40rpx;
  763. // padding-bottom: 45rpx;
  764. // margin-bottom: 43rpx;
  765. .system-title {
  766. display: flex;
  767. justify-content: center;
  768. align-items: center;
  769. padding-bottom: 22rpx;
  770. .title {
  771. width: 285rpx;
  772. height: 64rpx;
  773. background-color: #ca121e;
  774. border-radius: 32rpx;
  775. color: #ffffff;
  776. font-size: 32rpx;
  777. line-height: 64rpx;
  778. text-align: center;
  779. }
  780. .img {
  781. width: 68rpx;
  782. height: 43rpx;
  783. margin-left: 16rpx;
  784. margin-right: 16rpx;
  785. image {
  786. width: 68rpx;
  787. height: 43rpx;
  788. }
  789. }
  790. }
  791. .system-map {
  792. width: 750rpx;
  793. height: 500rpx;
  794. background-color: #ffffff;
  795. padding: 0 24rpx;
  796. padding-bottom: 45rpx;
  797. .map-box {
  798. width: 100%;
  799. height: 500rpx;
  800. background-color: #f8f8f8;
  801. image {
  802. width: 100%;
  803. height: 500rpx;
  804. }
  805. }
  806. }
  807. }
  808. // AED
  809. .list-box {
  810. padding: 0rpx 25rpx 24rpx;
  811. // margin-bottom: 84rpx;
  812. .system-title {
  813. display: flex;
  814. justify-content: center;
  815. align-items: center;
  816. height: 130rpx;
  817. // padding-bottom: 22rpx;
  818. background-color: #ffffff;
  819. .title {
  820. width: 285rpx;
  821. height: 64rpx;
  822. background-color: #ca121e;
  823. border-radius: 32rpx;
  824. color: #ffffff;
  825. font-size: 32rpx;
  826. line-height: 64rpx;
  827. text-align: center;
  828. }
  829. .img {
  830. width: 68rpx;
  831. height: 43rpx;
  832. margin-left: 16rpx;
  833. margin-right: 16rpx;
  834. image {
  835. width: 68rpx;
  836. height: 43rpx;
  837. }
  838. }
  839. }
  840. }
  841. .map-box {
  842. // background-color: #FFFFFF;
  843. width: 100%;
  844. height: 366rpx;
  845. // border: 2rpx solid #F2F2F2;
  846. box-shadow: 5px 15px 15px 5px #f2f2f2;
  847. }
  848. .list-tpl {
  849. background-color: #ffffff;
  850. margin: 25rpx 0rpx;
  851. padding: 25rpx 25rpx;
  852. font-size: 28rpx;
  853. border-radius: 15rpx;
  854. display: flex;
  855. justify-content: space-between;
  856. .list-left {
  857. display: flex;
  858. width: 100%;
  859. .number {
  860. font-size: 32rpx;
  861. margin-right: 14rpx;
  862. }
  863. .info {
  864. width: 100%;
  865. .title {
  866. font-size: 32rpx;
  867. color: #222222;
  868. font-weight: 500;
  869. }
  870. .addr {
  871. margin-top: 20rpx;
  872. }
  873. }
  874. }
  875. .image {
  876. width: 10%;
  877. text-align: center;
  878. image {
  879. width: 50rpx;
  880. height: 50rpx;
  881. }
  882. .tip {
  883. color: #7f7f7f;
  884. font-size: 21rpx;
  885. }
  886. }
  887. }
  888. }
  889. </style>