NationaIntroductionCommitteeLayout.vue 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992
  1. <!-- 委员会简介 -->
  2. <template>
  3. <div class="autoBox box1"
  4. style="position: relative;">
  5. <!-- 区域委员会 -->
  6. <div class="title"
  7. id="elIconArrowUp">
  8. {{$t('common.RegionalCommittee')}}
  9. </div>
  10. <div class="missions">
  11. <div :class="$i18n.locale=='zh'?'missionsLeft':'missionsLeft2'">
  12. <ul>
  13. <li :class="committeeSelectNum==item.id?'liTager':'liNoTager'"
  14. v-for="(item,index) in committee"
  15. @click="committeeChange(item.committeeName,item.id,item.committeeProfileUe,item.entityId,item)">
  16. {{item.committeeName}}
  17. </li>
  18. </ul>
  19. </div>
  20. <div class="missionsRight">
  21. <div class="missionsRightTitle">
  22. <span v-if="$i18n.locale =='zh'">{{regionEntity.committeeName}}简介 </span>
  23. <span v-if="$i18n.locale =='en'">Introduction to the {{regionEntity.committeeName}}</span>
  24. </div>
  25. <div class="briefIntroduction"
  26. v-html="regionEntity.committeeProfileUe">
  27. </div>
  28. <div class="borderBottom">
  29. <NationaIntroductionList :introduce="introduceMap"
  30. type="region"></NationaIntroductionList>
  31. </div>
  32. <!-- 动态 -->
  33. <div class="dynamic borderBottom"
  34. v-if="activityLogoFlag">
  35. {{$t('common.Dynamic')}}
  36. </div>
  37. <div v-if="activityLogoFlag">
  38. <div class="dynamicLeft">
  39. <img :src="'/api/file/pub/' + this.activityLogo"
  40. alt=""
  41. class="dynamicImg">
  42. </div>
  43. <div class="dynamicRight">
  44. <tr v-for="(item,index) in regionActivityInfoList"
  45. :key="index"
  46. v-if="index<5"
  47. @click="addBrowse(item.entityId);toView('nationalregionalCommissionsDetailds',item.entityId)"
  48. class="cursor">
  49. <td class="dynamicTitle">{{item.activityName}}</td>
  50. <!-- <td class="dynamicTime"
  51. style="float: right;">{{formatDate(item.createDate)}}</td>
  52. <td style="clear:both"></td> -->
  53. </tr>
  54. </div>
  55. </div>
  56. </div>
  57. <div style="clear: both;"></div>
  58. </div>
  59. <div style="position: fixed;bottom: 10px;left: 50%;transform: translate(-50%,-50%); background-color: rgba(0,145,255,.3);
  60. z-index: 99;padding:12px 50px;color: #fff;border-radius: 15px;"
  61. class="view"
  62. v-if="ifUp">
  63. <i class=" el-icon-arrow-up"></i>
  64. <span class="cursor"
  65. style="color: #fff;margin-left: 5px;"
  66. @click="toUp">{{$t('common.RegionalCommittee')}}</span>
  67. </div>
  68. <div style="position: fixed;bottom: 10px;left: 50%;transform: translateX(-50%); background-color: rgba(0,145,255,.3);
  69. z-index: 99;padding:12px 50px;color: #fff;border-radius: 15px;"
  70. class="view"
  71. v-else>
  72. <i class="el-icon-arrow-down"></i>
  73. <span style="color: #fff;margin-left: 5px;"
  74. class="cursor"
  75. @click="handleLeft">{{$t('common.NationalCommittee')}}</span>
  76. </div>
  77. <!-- 国家委员会 -->
  78. <div class="title marginTop"
  79. id="elIconArrowDown">
  80. {{$t('common.NationalCommittee')}}
  81. </div>
  82. <div style="margin-top: 20px;">
  83. <Screen v-bind:screen1="screen1"
  84. :screen3="screen3"
  85. @screenBack="screenBack"></Screen>
  86. </div>
  87. <div style="height: 40px;padding: 10px 20px 0 0;background-color: rgb(247, 247, 247);margin: 0 20px;">
  88. <div style="float: right;transform: translateY(-10px);">
  89. <el-select v-model="CountryId"
  90. :no-match-text="$i18n.locale=='zh'?'无匹配数据':'No Data'"
  91. filterable
  92. :placeholder="$t('common.PleaseEnter') + $t('common.Nameofcountry')">
  93. <el-option v-for="item in worldSearch"
  94. :key="item.id"
  95. :label="item.committeeName"
  96. :value="item.id">
  97. </el-option>
  98. </el-select>
  99. </div>
  100. </div>
  101. <!-- 国家委员会全部展示 -->
  102. <div v-if="!photoUrl">
  103. <div class="map">
  104. <ul>
  105. <li class=""
  106. v-for="(item,index) in world">
  107. <div v-if="index <32"
  108. @click="mapClick(item)">
  109. <div>
  110. <img :src="'api/file/pub/'+ item.nationalFlag"
  111. alt=""
  112. class="mapImg">
  113. </div>
  114. <div class="mapName">
  115. {{item.committeeName}}
  116. </div>
  117. </div>
  118. </li>
  119. </ul>
  120. </div>
  121. <div style="clear: both;"></div>
  122. <div style="width: 100%;position: relative;height: 100px;">
  123. <el-pagination class="position"
  124. background
  125. layout="prev, pager, next"
  126. :page-size=32
  127. :total=totalPage
  128. @current-change="handleCurrentChange">
  129. </el-pagination>
  130. </div>
  131. </div>
  132. <!-- 点击展示单个详情 -->
  133. <div v-if="photoUrl">
  134. <div>
  135. <div style="position: relative;width:178px;height:136px;float: left;margin-left: 40px;margin-top: 10px;"
  136. @click="photoUrlChange">
  137. <div class="boxMark">
  138. {{$t('common.ActiveReturn')}}
  139. </div>
  140. <img :src="'api/file/pub/' + countryEntity.nationalFlag"
  141. alt=""
  142. style="width:100%;height:100%;">
  143. </div>
  144. <div style="float: left;width: 900px;margin-left: 30px;">
  145. <div class="countryMapTitle">{{countryEntity.committeeName}}</div>
  146. <div class="countryMapMiss"
  147. v-html="countryEntity.committeeProfileUe"></div>
  148. <NationaIntroductionList :introduce="countryMap"
  149. type="country"></NationaIntroductionList>
  150. <!-- 动态 -->
  151. <div class="dynamic borderBottom borderTop"
  152. v-if="countryActivityInfoList.length>0">
  153. {{$t('common.Dynamic')}}
  154. </div>
  155. <div>
  156. <div class="dynamicLeft"
  157. v-if="countryActivityLogoFlag">
  158. <img :src="'/api/file/pub/' + countryActivityLogo"
  159. alt=""
  160. class="dynamicImg">
  161. </div>
  162. <div class="dynamicRight"
  163. v-if="countryActivityLogoFlag">
  164. <tr v-for="(item,index) in countryActivityInfoList"
  165. v-if="index<5"
  166. @click="addBrowse(item.entityId);toView('nationalregionalCommissionsDetailds',item.entityId)"
  167. class="cursor">
  168. <td class="dynamicTitle">{{item.activityName}}</td>
  169. <!-- <td class="dynamicTime"
  170. style="float: right;">{{formatDate(item.createDate)}}</td>
  171. <td style="clear:both"></td> -->
  172. </tr>
  173. </div>
  174. </div>
  175. <div style="clear: both;"></div>
  176. </div>
  177. </div>
  178. <div style="clear: both;"></div>
  179. <div>
  180. </div>
  181. </div>
  182. </div>
  183. </div>
  184. </template>
  185. <script>
  186. import Screen from "@/components/screen";
  187. import { getDicts } from "@/api/dict";
  188. import NationaIntroductionList from "@/views/NationalregionalCommissions/NationaIntroductionList";
  189. import { getCommitteeInfos, getCommitteeCountryInfos } from '@/api/committee/committeeBasisInfo'
  190. import {addBrowseNum} from '@/api/committee/committeeActivityEntity'
  191. export default {
  192. name: "NationaIntroductionCommitteeLayout",
  193. components: { Screen, NationaIntroductionList },
  194. data () {
  195. return {
  196. totalPage: null,
  197. photoUrl: '',
  198. page: {
  199. order: null,
  200. region: null,
  201. name: null,
  202. language: '',
  203. pageNo: 1,
  204. pageSize: 32
  205. },
  206. CountryId: null,
  207. committeeSelectNum: '',
  208. committeeSelectLable: '非洲区域委员会',
  209. briefIntroduction: '',//区域委员会简介
  210. regionEntity: {},//区域委员会
  211. countryMapMiss: '',//国家委员会简介
  212. countryEntityId: '',//国家委员会实体id
  213. countryEntity: {},//国家委员会
  214. countryActivityInfoList: [],
  215. regionActivityInfoList: [],
  216. committeeRegionDicts: [],
  217. committeeRegionDictsEn: [],
  218. activityLogo: '',
  219. activityLogoFlag: true,
  220. countryActivityLogo: '',
  221. countryActivityLogoFlag: true,
  222. committee: [],
  223. introduceRegion: {},
  224. ifUp: false,
  225. introduce: {},
  226. introduceMap: {},
  227. cooperationUnitDynamicList: [],
  228. world: [],
  229. worldSearch: [],
  230. countryList: {},
  231. countryMap: {},
  232. screen1: {
  233. value: "common.Region",
  234. item: [],
  235. },
  236. screen3: {
  237. value: "common.Byletter",
  238. item: [{
  239. value: null,
  240. ifValue: true,
  241. label: 'common.All'
  242. }, {
  243. ifValue: false,
  244. value: 'A',
  245. label: 'A'
  246. }, {
  247. ifValue: false,
  248. value: 'B',
  249. label: 'B'
  250. }, {
  251. ifValue: false,
  252. value: 'C',
  253. label: 'C'
  254. }, {
  255. ifValue: false,
  256. value: 'D',
  257. label: 'D'
  258. }, {
  259. ifValue: false,
  260. value: 'E',
  261. label: 'E'
  262. }, {
  263. ifValue: false,
  264. value: 'F',
  265. label: 'F'
  266. }, {
  267. ifValue: false,
  268. value: 'G',
  269. label: 'G'
  270. }, {
  271. ifValue: false,
  272. value: 'H',
  273. label: 'H'
  274. }, {
  275. ifValue: false,
  276. value: 'I',
  277. label: 'I'
  278. }, {
  279. ifValue: false,
  280. value: 'J',
  281. label: 'J'
  282. }, {
  283. ifValue: false,
  284. value: 'K',
  285. label: 'K'
  286. }, {
  287. ifValue: false,
  288. value: 'L',
  289. label: 'L'
  290. }, {
  291. ifValue: false,
  292. value: 'M',
  293. label: 'M'
  294. }, {
  295. ifValue: false,
  296. value: 'N',
  297. label: 'N'
  298. }, {
  299. ifValue: false,
  300. value: 'O',
  301. label: 'O'
  302. }, {
  303. ifValue: false,
  304. value: 'P',
  305. label: 'P'
  306. }, {
  307. ifValue: false,
  308. value: 'Q',
  309. label: 'Q'
  310. }, {
  311. ifValue: false,
  312. value: 'R',
  313. label: 'R'
  314. }, {
  315. ifValue: false,
  316. value: 'S',
  317. label: 'S'
  318. }, {
  319. ifValue: false,
  320. value: 'T',
  321. label: 'T'
  322. }, {
  323. ifValue: false,
  324. value: 'U',
  325. label: 'U'
  326. }, {
  327. ifValue: false,
  328. value: 'V',
  329. label: 'V'
  330. }, {
  331. ifValue: false,
  332. value: 'W',
  333. label: 'W'
  334. }, {
  335. ifValue: false,
  336. value: 'X',
  337. label: 'X'
  338. }, {
  339. ifValue: false,
  340. value: 'Y',
  341. label: 'Y'
  342. }, {
  343. ifValue: false,
  344. value: 'Z',
  345. label: 'Z'
  346. }],
  347. },
  348. pageNo: 1,
  349. dataList: {},
  350. }
  351. },
  352. watch: {
  353. "$i18n.locale" () {
  354. this.getMap();
  355. this.getDict();
  356. this.screenBack();
  357. },
  358. "CountryId" () {
  359. this.screenByName();
  360. }
  361. },
  362. mounted () {
  363. this.getMap();
  364. this.getDict();
  365. this.screenBack();
  366. window.addEventListener('scroll', this.handleScroll)
  367. },
  368. destroyed () {
  369. window.removeEventListener('scroll', this.handleScroll);
  370. },
  371. methods: {
  372. handleLeft (index) {
  373. this.$el.querySelector('#elIconArrowDown').scrollIntoView({
  374. behavior: "smooth", // 平滑过渡
  375. block: "start" // 上边框与视窗顶部平齐。默认值
  376. });
  377. // this.listBoxState=false;
  378. // let timeId;
  379. // clearTimeout(timeId);
  380. // timeId = setTimeout(() => {
  381. // this.listBoxState=true;
  382. // },200);
  383. },
  384. handleScroll () {
  385. var scrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop;
  386. // console.log(scrollTop)
  387. // var offsetTop = document.querySelector('.realTimeInfo_scree').offsetTop
  388. if (scrollTop > 400) {
  389. this.ifUp = true;
  390. } else if (scrollTop < 400) {
  391. this.ifUp = false;
  392. }
  393. },
  394. toUp () {
  395. // window.scrollTo(0,0);
  396. var timer = setInterval(function () {
  397. let osTop = document.documentElement.scrollTop || document.body.scrollTop;
  398. let ispeed = Math.floor(-osTop / 5);
  399. document.documentElement.scrollTop = document.body.scrollTop = osTop + ispeed;
  400. this.isTop = true;
  401. if (osTop === 0) {
  402. clearInterval(timer);
  403. }
  404. }, 30)
  405. },
  406. getDict () {
  407. getDicts("COMMITTEE_REGIONAL_DICT,COMMITTEE_REGIONAL_DICT_EN").then(res => {
  408. var data = res.data;
  409. if (data) {
  410. if (this.$i18n.locale == 'zh') {
  411. this.screen1.item = res.data[0] || [];
  412. this.screen1.item.unshift({
  413. label: "全部",
  414. value: null,
  415. })
  416. this.screen1.item = res.data[0] || [];
  417. } else if (this.$i18n.locale == 'en') {
  418. this.screen1.item = res.data[1] || [];
  419. this.screen1.item.unshift({
  420. label: "All",
  421. value: null,
  422. })
  423. }
  424. }
  425. });
  426. },
  427. screenByName () {
  428. this.page.language = this.$i18n.locale.toUpperCase();
  429. this.page.name = this.CountryId,
  430. this.photoUrl = '';
  431. // console.log(this.page);
  432. getCommitteeCountryInfos(this.page).then(res => {
  433. var data = res.data
  434. if (data) {
  435. this.world = res.data.committeeBasisInfos || [];
  436. this.totalPage = res.data.page.totalCount - 0;
  437. }
  438. });
  439. },
  440. screenBack (data) {
  441. this.page.language = this.$i18n.locale.toUpperCase();
  442. if (data != undefined) {
  443. if (data.click1) {
  444. this.page.region = data.click1;
  445. } else {
  446. this.page.region = null;
  447. }
  448. if (data.click3) {
  449. this.page.order = data.click3;
  450. } else {
  451. this.page.order = null;
  452. }
  453. }
  454. // if(data){
  455. // page={
  456. // region:data.click1 ,
  457. // order:data.click3 ,
  458. // language:this.$i18n.locale.toUpperCase(),
  459. // pageNo:this.pageNo,
  460. // pageSize:32
  461. // }
  462. // }else{
  463. // page={
  464. // language:this.$i18n.locale.toUpperCase(),
  465. // name:this.CountryId,
  466. // pageNo:this.pageNo,
  467. // pageSize:32
  468. // }
  469. // }
  470. this.photoUrl = '';
  471. // console.log(this.page);
  472. getCommitteeCountryInfos(this.page).then(res => {
  473. var data = res.data
  474. if (data) {
  475. this.world = res.data.committeeBasisInfos || [];
  476. this.totalPage = res.data.page.totalCount - 0;
  477. }
  478. });
  479. },
  480. handleCurrentChange (val) {
  481. this.page.pageNo = val;
  482. this.screenBack(this.dataList);
  483. },
  484. getMap () {
  485. let page = {
  486. committeeId: "",
  487. language: this.$i18n.locale.toUpperCase()
  488. }
  489. getCommitteeInfos(page).then((res) => {
  490. if (res.data) {
  491. // 区域委员会
  492. this.committee = res.data.committeeBasisInfosRegion;
  493. // 国家委员会
  494. this.worldSearch = res.data.committeeBasisInfosCountry;
  495. this.worldSearch.unshift({
  496. committeeName: this.$i18n.locale == 'zh' ? '全部' : 'ALL',
  497. id: null,
  498. value: null
  499. })
  500. // 活动
  501. this.cooperationUnitDynamicList = res.data.committeeActivityInfos;
  502. this.countryList = res.data.countryList;
  503. this.introduce = res.data.regionList;
  504. // 默认取第一个区域委员会
  505. this.committeeChange(this.committee[0].committeeName, this.committee[0].id, this.committee[0].committeeProfileUe, this.committee[0].entityId, this.committee[0])
  506. }
  507. })
  508. },
  509. mapClick (item) {
  510. this.countryEntity = item;
  511. this.photoUrl = item.nationalFlag;
  512. this.countryActivityInfoList = [];
  513. this.cooperationUnitDynamicList.forEach(element => {
  514. let strings=element.committeeId.split(",");
  515. strings.forEach(i => {
  516. if (i == item.entityId) {
  517. this.countryActivityInfoList.push(element);
  518. }
  519. })
  520. // if (element.committeeId == item.entityId) {
  521. // this.countryActivityInfoList.push(element);
  522. // }
  523. });
  524. if (this.countryActivityInfoList.length >= 1) {
  525. this.countryActivityLogo = this.countryActivityInfoList[0].activityLogo;
  526. this.countryActivityLogoFlag = true;
  527. } else {
  528. this.$nextTick(() => {
  529. this.countryActivityLogo = " ";
  530. this.countryActivityLogoFlag = false;
  531. })
  532. }
  533. this.countryMap = {};
  534. this.countryMap[0] = []
  535. this.countryMap[1] = []
  536. this.countryMap[2] = []
  537. this.countryMap[3] = []
  538. this.countryMap[4] = []
  539. this.countryList[1].forEach(element => {
  540. if (element.nationalCommitteeDict == item.entityId && element.correlationType == 'C') {
  541. this.countryMap[0].push(element);
  542. }
  543. })
  544. this.countryList[1].forEach(element => {
  545. if (element.nationalCommitteeDict == item.entityId && element.correlationType == 'P') {
  546. this.countryMap[1].push(element);
  547. }
  548. })
  549. this.countryList[2].forEach(element => {
  550. if (element.nationalCommitteeDict == item.entityId) {
  551. this.countryMap[2].push(element);
  552. }
  553. })
  554. this.countryList[3].forEach(element => {
  555. if (element.nationalCommitteeDict == item.entityId) {
  556. this.countryMap[3].push(element);
  557. }
  558. })
  559. this.countryList[4].forEach(element => {
  560. if (element.nationalCommitteeDict == item.entityId) {
  561. this.countryMap[4].push(element);
  562. }
  563. })
  564. this.$forceUpdate();
  565. },
  566. photoUrlChange () {
  567. this.photoUrl = "";
  568. // console.log(this.photoUrl)
  569. },
  570. // realTimeInfoScreen(i,index){
  571. // this.screenIndex=index
  572. // this.Screens=i.lable
  573. // },
  574. // 委员会切换
  575. committeeChange (lable, num, committeeProfileUe, entityId, item) {
  576. this.regionEntity = item;
  577. this.committeeSelectNum = num;
  578. this.committeeSelectLable = lable;
  579. this.briefIntroduction = committeeProfileUe
  580. this.regionActivityInfoList = [];
  581. this.entityId = entityId;
  582. this.cooperationUnitDynamicList.forEach(element => {
  583. let strings=element.committeeId.split(",");
  584. strings.forEach(i => {
  585. if (i == entityId) {
  586. this.regionActivityInfoList.push(element);
  587. }
  588. })
  589. console.log("list")
  590. console.log(this.regionActivityInfoList)
  591. });
  592. if (this.regionActivityInfoList.length >= 1) {
  593. this.activityLogo = this.regionActivityInfoList[0].activityLogo;
  594. this.activityLogoFlag = true;
  595. } else {
  596. this.$nextTick(() => {
  597. this.activityLogo = " ";
  598. this.activityLogoFlag = false;
  599. })
  600. }
  601. this.introduceMap = {};
  602. this.introduceMap[1] = []
  603. this.introduceMap[2] = []
  604. this.introduceMap[3] = []
  605. this.introduceMap[4] = []
  606. this.introduce[1].forEach(element => {
  607. if (element.regionalCommitteeDict == entityId) {
  608. element.unitProfile = element.unitProfile ? element.unitProfile.replace(/<[^>]+>|&[^>]+;/g, "") : '';
  609. this.introduceMap[1].push(element);
  610. }
  611. })
  612. this.introduce[2].forEach(element => {
  613. if (element.regionalCommitteeDict == entityId) {
  614. this.introduceMap[2].push(element);
  615. }
  616. })
  617. this.introduce[3].forEach(element => {
  618. if (element.regionalCommitteeDict == entityId) {
  619. this.introduceMap[3].push(element);
  620. }
  621. })
  622. this.introduce[4].forEach(element => {
  623. if (element.regionalCommitteeDict == entityId) {
  624. this.introduceMap[4].push(element);
  625. }
  626. })
  627. this.$forceUpdate();
  628. // 处理绑定的机构 人员数据
  629. },
  630. addBrowse(entityId){
  631. addBrowseNum(entityId).then(res =>{
  632. // console.log(res);
  633. })
  634. },
  635. toView(router,json){
  636. this.$store.commit('modify', router);
  637. window.localStorage.setItem('router', router);
  638. const { href } = this.$router.resolve({
  639. name: router,
  640. query: {
  641. key: json
  642. }
  643. });
  644. window.open(href, '_blank');
  645. },
  646. }
  647. }
  648. </script>
  649. <style scoped>
  650. .box1 {
  651. /* margin-top: 10px; */
  652. background: #fff;
  653. /* height: 500px; */
  654. padding: 0 0 20px 0;
  655. position: absolute;
  656. }
  657. .crumbs {
  658. margin-left: 20px;
  659. }
  660. .screen1 {
  661. color: #2c5589;
  662. }
  663. .screen2 {
  664. font-size: 14px;
  665. color: #bebebe;
  666. }
  667. .marginTop {
  668. margin-top: 20px;
  669. }
  670. .title {
  671. width: 100%;
  672. height: 60px;
  673. background-color: #ebf5ff;
  674. text-align: center;
  675. color: #1890ff;
  676. line-height: 60px;
  677. font-size: 25px;
  678. font-family: PingFangSC-Semibold, PingFang SC;
  679. font-weight: 600;
  680. }
  681. .missions {
  682. margin-top: 30px;
  683. }
  684. .missionsLeft,
  685. .missionsLeft2 {
  686. float: left;
  687. width: 258px;
  688. /* height: 430px; */
  689. margin-left: 10px;
  690. }
  691. .missionsLeft li {
  692. width: 100%;
  693. height: 50px;
  694. text-align: center;
  695. font-size: 20px;
  696. font-family: PingFangSC-Semibold, PingFang SC;
  697. line-height: 50px;
  698. letter-spacing: 1px;
  699. border-radius: 5px;
  700. cursor: pointer;
  701. overflow: hidden;
  702. margin-bottom: 3px;
  703. }
  704. .missionsLeft2 li {
  705. width: 100%;
  706. /* height: 50px; */
  707. text-align: center;
  708. font-size: 20px;
  709. font-family: PingFangSC-Semibold, PingFang SC;
  710. line-height: 25px;
  711. padding: 15px 0;
  712. letter-spacing: 1px;
  713. border-radius: 5px;
  714. cursor: pointer;
  715. /* overflow: hidden; */
  716. margin-bottom: 3px;
  717. }
  718. .missionsLeft .liTager,
  719. .missionsLeft2 .liTager {
  720. background-color: #1890ff;
  721. color: #ffffff;
  722. }
  723. .missionsLeft .liNoTager .missionsLeft2 .liNoTager {
  724. background-color: #ebf5ff;
  725. color: #333333;
  726. }
  727. .missionsRight {
  728. float: right;
  729. width: 900px;
  730. }
  731. .missionsRightTitle {
  732. font-size: 23px;
  733. font-family: PingFangSC-Semibold, PingFang SC;
  734. font-weight: 500;
  735. color: #1890ff;
  736. line-height: 32px;
  737. }
  738. .briefIntroduction {
  739. font-size: 16px;
  740. font-family: PingFangSC-Regular, PingFang SC;
  741. font-weight: 400;
  742. color: #333333;
  743. line-height: 30px;
  744. margin: 20px 0 12px 0;
  745. text-indent: 2em;
  746. }
  747. .email {
  748. font-size: 16px;
  749. font-family: PingFangSC-Regular, PingFang SC;
  750. font-weight: 400;
  751. color: #333333;
  752. margin-bottom: 20px;
  753. line-height: 22px;
  754. }
  755. .introduce {
  756. margin-top: 20px;
  757. }
  758. .introduceBorder {
  759. border-top: 1px solid #0091ff;
  760. }
  761. .introduceItem {
  762. margin: 10px 0;
  763. position: relative;
  764. }
  765. .introduceItem :hover .iconRight {
  766. color: #0091ff;
  767. }
  768. .introduceItemTitle {
  769. width: 100px;
  770. height: 34px;
  771. line-height: 34px;
  772. border: 1px solid #0091ff;
  773. text-align: center;
  774. color: #0091ff;
  775. position: absolute;
  776. top: 25px;
  777. left: 0px;
  778. }
  779. .borderBottom {
  780. border-bottom: 1px solid rgba(0, 121, 239, 0.5);
  781. }
  782. .borderTop {
  783. border-top: 1px solid rgba(0, 121, 239, 0.5);
  784. }
  785. .introduceItemImg {
  786. width: 80px;
  787. height: 80px;
  788. position: absolute;
  789. top: 10px;
  790. left: 130px;
  791. }
  792. .introduceItemName {
  793. width: 160px;
  794. /*position: absolute;*/
  795. /*top: 10px;*/
  796. /*left: 220px;*/
  797. padding: 10px 0;
  798. }
  799. .introduceItemPersonnel {
  800. font-size: 16px;
  801. font-family: PingFangSC-Semibold, PingFang SC;
  802. font-weight: 600;
  803. text-align: center;
  804. color: #333333;
  805. line-height: 28px;
  806. }
  807. .introduceItemCountry {
  808. font-size: 14px;
  809. text-align: center;
  810. font-family: PingFangSC-Regular, PingFang SC;
  811. font-weight: 400;
  812. color: #333333;
  813. line-height: 22px;
  814. }
  815. .regionalIntroduce {
  816. width: 474px;
  817. height: 85px;
  818. margin-top: -20px;
  819. color: #333333;
  820. line-height: 22px;
  821. overflow: hidden;
  822. position: absolute;
  823. font-size: 14px;
  824. top: 10px;
  825. left: 375px;
  826. }
  827. .dynamic {
  828. padding: 20px 0 10px 0;
  829. font-size: 16px;
  830. font-family: HiraginoSansGB-W6, HiraginoSansGB;
  831. font-weight: normal;
  832. color: #1890ff;
  833. line-height: 30px;
  834. }
  835. .dynamicLeft {
  836. float: left;
  837. margin-top: 15px;
  838. width: 280px;
  839. }
  840. .dynamicImg {
  841. width: 100%;
  842. height: 200px;
  843. }
  844. .dynamicRight {
  845. float: right;
  846. margin-top: 15px;
  847. margin-right: 10px;
  848. width: 590px;
  849. color: #979797;
  850. }
  851. .dynamicTitle {
  852. float: left;
  853. width: 500px;
  854. display: inline-block;
  855. overflow: hidden;
  856. text-overflow: ellipsis;
  857. white-space: nowrap;
  858. line-height: 40px;
  859. position: relative;
  860. text-indent: 1em;
  861. }
  862. .dynamicTitle::before {
  863. content: "";
  864. display: block;
  865. width: 8px;
  866. height: 8px;
  867. background: #0b82ff;
  868. position: absolute;
  869. top: 17px;
  870. left: 0;
  871. }
  872. .view {
  873. position: relative;
  874. margin: 0 auto;
  875. /* padding: 1em; */
  876. max-width: 23em;
  877. background: hsla(0, 0%, 100%, 0.25) border-box;
  878. overflow: hidden;
  879. border-radius: 0.3em;
  880. box-shadow: 0 0 0 1px hsla(0, 0%, 100%, 0.3) inset,
  881. 0 0.5em 1em rgba(0, 0, 0, 0.6);
  882. text-shadow: 0 1px 1px hsla(0, 0%, 100%, 0.3);
  883. }
  884. .view::before {
  885. content: "";
  886. position: absolute;
  887. top: 0;
  888. right: 0;
  889. bottom: 0;
  890. left: 0;
  891. margin: -30px;
  892. z-index: -1;
  893. -webkit-filter: blur(20px);
  894. filter: blur(20px);
  895. }
  896. .dynamicTime {
  897. line-height: 40px;
  898. }
  899. .map ul {
  900. padding: 20px 0px 20px 20px;
  901. }
  902. .map ul li {
  903. float: left;
  904. width: 130px;
  905. margin-right: 17px;
  906. }
  907. .mapImg {
  908. width: 130px;
  909. height: 100px;
  910. }
  911. .mapName {
  912. font-size: 16px;
  913. font-family: PingFangSC-Semibold, PingFang SC;
  914. font-weight: 600;
  915. color: #2c558a;
  916. text-align: center;
  917. height: 50px;
  918. margin-top: 10px;
  919. }
  920. .position {
  921. height: 80px;
  922. position: absolute;
  923. left: 50%;
  924. top: 100px;
  925. transform: translate(-50%, -50%);
  926. }
  927. .countryMapTitle {
  928. margin-top: 10px;
  929. font-size: 20px;
  930. font-family: PingFangSC-Semibold, PingFang SC;
  931. font-weight: 600;
  932. color: #1890ff;
  933. line-height: 32px;
  934. }
  935. .countryMapMiss {
  936. margin-top: 20px;
  937. font-size: 16px;
  938. font-family: PingFangSC-Regular, PingFang SC;
  939. font-weight: 400;
  940. color: #333333;
  941. line-height: 40px;
  942. padding-bottom: 30px;
  943. border-bottom: 1px solid #0b82ff;
  944. }
  945. .introduce_F5FAFF {
  946. background-color: #f5faff;
  947. margin-left: 125px;
  948. height: 100px;
  949. }
  950. .iconRight {
  951. float: right;
  952. margin-top: 5px;
  953. }
  954. .boxMark {
  955. position: absolute;
  956. top: 0;
  957. left: 0;
  958. width: 100%;
  959. height: 100%;
  960. background: rgbA(155, 155, 155, 0.8);
  961. line-height: 136px;
  962. text-align: center;
  963. color: #ffffff;
  964. cursor: pointer;
  965. }
  966. .dynamicRight tr {
  967. line-height: 30px;
  968. width: 100%;
  969. display: inline-block;
  970. border-bottom: 1px dashed #ccc;
  971. font-size: 14px;
  972. color: #6C819D;
  973. margin-bottom: 5px;
  974. }
  975. </style>