countryNationalSpace.vue 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915
  1. <template>
  2. <div>
  3. <div class="autoBox box">
  4. <div class="crumbs">
  5. <el-breadcrumb separator="/">
  6. <el-breadcrumb-item :to="{ path: 'home' }"
  7. >{{ $t('common.Home') }}
  8. </el-breadcrumb-item>
  9. <el-breadcrumb-item :to="{ path: 'countryInformation' }"
  10. >{{ $t('common.CountryInformation') }}
  11. </el-breadcrumb-item>
  12. <el-breadcrumb-item
  13. >{{ initData ? initData.zhName : '' }}
  14. </el-breadcrumb-item>
  15. </el-breadcrumb>
  16. </div>
  17. <div style="width: 100%; height: 363px; position: relative">
  18. <div class="swipers">
  19. <el-carousel height="313px">
  20. <el-carousel-item v-for="(i, index) in initData.photo" :key="i">
  21. <img
  22. :src="'api/file/pub/' + i"
  23. alt=""
  24. style="width: 100%; height: 100%"
  25. />
  26. </el-carousel-item>
  27. </el-carousel>
  28. </div>
  29. <div class="details">
  30. <div style="width: 100%; font-size: 14px; line-height: 35px">
  31. <!-- <div>-->
  32. <!-- <span class="initData_label cursor">{{initData.zhName}}</span>-->
  33. <!-- <span style="margin-left: 150px;color: #666;cursor: pointer;" :style="ifcommon?'color:#0079ef':''" @click="shareChange()">-->
  34. <!-- <i class="fa fa-heart-o" aria-hidden="true" style="margin-right: 5px;"></i>-->
  35. <!-- {{ifcommon?$t('common.Concerned'):$t('common.follow')}}-->
  36. <!-- </span>-->
  37. <!-- &lt;!&ndash; <span style="margin-left: 20px;color: #666;cursor: pointer;" class="btn" @click="copy">-->
  38. <!-- <i class="el-icon-share" style="margin-right: 2px;"></i> {{$t('common.Share')}}-->
  39. <!-- </span> &ndash;&gt;-->
  40. <!-- </div>-->
  41. <div>
  42. <span
  43. >{{ $t('common.EnglishName') }}: {{ initData.enName }}</span
  44. >
  45. </div>
  46. <!-- <div>
  47. <span >{{$t('common.alias')}}: {{initData.otherName}}</span>
  48. </div> -->
  49. <div>
  50. <span>{{ $t('common.State') }}: {{ initData.are }}</span>
  51. </div>
  52. <div
  53. style="
  54. -webkit-box-orient: vertical;
  55. position: relative;
  56. line-height: 1.4em;
  57. overflow: hidden;
  58. height: 8em;
  59. cursor: pointer;
  60. "
  61. class="plateCountry"
  62. @click="dialogVisibleChange"
  63. >
  64. <!-- <div style="-->
  65. <!-- line-height:1.4em;-->
  66. <!-- overflow: hidden;-->
  67. <!-- -webkit-box-orient: vertical;-->
  68. <!-- text-overflow: ellipsis;-->
  69. <!-- display: -webkit-box;-->
  70. <!-- -webkit-line-clamp:4;-->
  71. <!-- cursor: pointer;" class="plateCountry" @click="dialogVisibleChange">-->
  72. <span style="line-height: 30px">
  73. {{ $t('common.BasicSituation') }}: <br />
  74. <span class="threeLine">{{ initData.basicProfile }}</span>
  75. </span>
  76. </div>
  77. <div style="margin-top: 7px">
  78. <!-- <el-button type="" style="margin-left: 10px;margin-top: 10px;height: 40px;width: 170px;" icon="el-icon-star-off" :style="ifcommon?'color: #66b1ff;':''" @click="shareChange()">-->
  79. <span
  80. class="share cursor"
  81. :style="ifcommon ? 'color: #66b1ff;' : ''"
  82. style=""
  83. @click="shareChange()"
  84. >
  85. <i
  86. class="el-icon-star-off"
  87. :style="ifcommon ? 'color: #66b1ff;' : ''"
  88. ></i>
  89. {{
  90. ifcommon
  91. ? $t('common.CountryAttentioned')
  92. : $t('common.FocusontheCountry')
  93. }}
  94. </span>
  95. <span
  96. style="float: right; cursor: pointer"
  97. @click="dialogVisibleChange"
  98. >{{ $i18n.locale == 'zh' ? '更多信息' : 'More Info' }}</span
  99. >
  100. <!-- </el-button>-->
  101. </div>
  102. <el-dialog
  103. :class="{
  104. dialogZh: $i18n.locale == 'zh',
  105. dialogEn: $i18n.locale == 'en',
  106. }"
  107. :title="$t('common.IndividualProfiles')"
  108. :visible.sync="dialogVisible"
  109. :close-on-click-modal="false"
  110. width="50%"
  111. >
  112. <div style="height: 600px; overflow-y: scroll">
  113. <div
  114. style="margin: 0 30px"
  115. class="white"
  116. v-for="(item, index) in initData1"
  117. >
  118. <div class="enterprise_style">
  119. <span
  120. class="enterprise_style_span4"
  121. style="
  122. padding: 10px;
  123. text-align: center;
  124. height: 100%;
  125. color: #2c558a;
  126. border-bottom: 2px solid #6699ff;
  127. "
  128. >
  129. <span
  130. style="
  131. display: inline-block;
  132. width: 10px;
  133. height: 10px;
  134. background: #0b82ff;
  135. border-radius: 50%;
  136. "
  137. ></span>
  138. {{ item.title }}
  139. </span>
  140. </div>
  141. <p
  142. style="
  143. margin-top: 15px;
  144. color: #666;
  145. margin-left: 35px;
  146. min-height: 220px;
  147. margin-right: 35px;
  148. "
  149. >
  150. <span
  151. :class="{
  152. messageConZh: $i18n.locale == 'zh',
  153. messageConEn: $i18n.locale == 'en',
  154. }"
  155. style="color: #666666"
  156. v-html="item.contentHtml"
  157. ></span>
  158. <span
  159. style="
  160. color: #02558a;
  161. margin-left: 25px;
  162. margin-right: 25px;
  163. "
  164. class="cursor"
  165. ></span>
  166. </p>
  167. </div>
  168. </div>
  169. </el-dialog>
  170. </div>
  171. </div>
  172. </div>
  173. <div style="height: 50px; line-height: 50px; margin: 0px 0 20px 20px">
  174. <!-- <span
  175. :class="informationsClass==1?'information2':'information1'"
  176. @click="getInformation(1)" class="cursor">
  177. {{$t('common.IndividualProfiles')}}
  178. </span> -->
  179. <span
  180. :class="informationsClass == 2 ? 'information2' : 'information1'"
  181. @click="getInformation(2)"
  182. class="cursor"
  183. >
  184. {{ $t('common.Resources') }}
  185. </span>
  186. <span
  187. :class="informationsClass == 3 ? 'information2' : 'information1'"
  188. @click="getInformation(3)"
  189. class="cursor"
  190. >
  191. {{ $t('common.EnergyDevelopmentPlanning') }}
  192. </span>
  193. <!-- <span
  194. :class="informationsClass==4?'information2':'information1'"
  195. @click="getInformation(4)" class="cursor">
  196. {{$t('common.ProjectStatus')}}
  197. </span> -->
  198. <span
  199. :class="informationsClass == 5 ? 'information2' : 'information1'"
  200. @click="getInformation(5)"
  201. class="cursor"
  202. >
  203. {{ $t('common.ProjectDevelopmentGuide') }}
  204. </span>
  205. <span
  206. :class="informationsClass == 8 ? 'information2' : 'information1'"
  207. @click="getInformation(8)"
  208. class="cursor"
  209. >
  210. {{ $t('common.LawsAndRegulations') }}
  211. </span>
  212. </div>
  213. <CountryIndividualProfiles
  214. v-if="informationsClass == 1"
  215. :id="id"
  216. ></CountryIndividualProfiles>
  217. <countryResources
  218. v-if="informationsClass == 2"
  219. :id="id"
  220. ></countryResources>
  221. <countryEnergyPowerPlanning
  222. v-if="informationsClass == 3"
  223. :id="id"
  224. ></countryEnergyPowerPlanning>
  225. <countryProjectStatus
  226. v-if="informationsClass == 4"
  227. :id="id"
  228. :country="this.initData.otherName"
  229. :countryItem="this.initData"
  230. ></countryProjectStatus>
  231. <countryDevelopmentGuidelines
  232. v-if="informationsClass == 5"
  233. :id="id"
  234. ></countryDevelopmentGuidelines>
  235. <countryLawAndRegulations
  236. v-if="informationsClass == 8"
  237. :id="id"
  238. ></countryLawAndRegulations>
  239. <LoginMusk :toViewLogin="toViewLogin" @LoginBack="LoginBack"></LoginMusk>
  240. <div
  241. style="margin: 0 20px; margin-top: 20px; min-height: 200px"
  242. class="continents2"
  243. >
  244. <div style="border-bottom: 1px solid #0079ef; padding-bottom: 5px">
  245. <img
  246. src="@/assets/img/cooperationExchange/20200608_03.gif"
  247. alt=""
  248. style="height: 20px; vertical-align: middle"
  249. />
  250. <span style="margin-left: 5px">{{
  251. $t('common.RelatedProjects')
  252. }}</span>
  253. <span
  254. style="color: #333; font-size: 12px; float: right; cursor: pointer"
  255. @click="Changethebatch"
  256. >{{ $t('common.NextBatch') }}</span
  257. >
  258. </div>
  259. <ul>
  260. <li
  261. v-for="(item, index) in initData2"
  262. :key="index"
  263. @click="toView('projectPresentationDetails', item.projectId)"
  264. class="LiActive cursor"
  265. >
  266. <div style="position: relative; margin: 0 22px" class="border">
  267. <div style="width: 100%; text-align: center; padding-top: 30px">
  268. <div>
  269. <img
  270. :src="'/api/file/pub/' + item.bannerList[0]"
  271. alt=""
  272. style="width: 100%; height: 160px"
  273. v-if="item.bannerList[0]"
  274. />
  275. <img
  276. :src="'api/file/pub/' + '/def/projectdefault.png'"
  277. alt=""
  278. style="width: 100%; height: 160px"
  279. v-if="!item.bannerList[0]"
  280. />
  281. </div>
  282. <div style="color: rgba(51, 51, 51, 1); font-weight: 700">
  283. {{ item.projectName }}
  284. </div>
  285. </div>
  286. </div>
  287. </li>
  288. </ul>
  289. </div>
  290. <div
  291. style="margin: 0 20px; margin-top: 20px; min-height: 200px"
  292. class="continents2"
  293. >
  294. <div style="border-bottom: 1px solid #0079ef; padding-bottom: 5px">
  295. <img
  296. src="@/assets/img/cooperationExchange/20200608_03.gif"
  297. alt=""
  298. style="height: 20px; vertical-align: middle"
  299. />
  300. <span style="margin-left: 5px">{{
  301. $t('common.EnterpriseShow')
  302. }}</span>
  303. <span
  304. style="color: #333; font-size: 12px; float: right; cursor: pointer"
  305. @click="ChangeUnitBatch"
  306. >{{ $t('common.NextBatch') }}</span
  307. >
  308. </div>
  309. <ul>
  310. <li
  311. v-for="(item, index) in initData3"
  312. :key="index"
  313. @click="toViewTargtBack('enterpriseDetails',item)"
  314. class="LiActive cursor"
  315. >
  316. <div style="position: relative; margin: 0 22px" class="border">
  317. <div style="width: 100%; text-align: center; padding-top: 30px">
  318. <div>
  319. <img
  320. :src="'/api/file/pub/' + item.photo"
  321. alt=""
  322. style="width: 100%; height: 160px"
  323. v-if="item.photo"
  324. />
  325. <img
  326. :src="'api/file/pub/' + '/def/projectdefault.png'"
  327. alt=""
  328. style="width: 100%; height: 160px"
  329. v-if="!item.photo"
  330. />
  331. </div>
  332. <div style="color: rgba(51, 51, 51, 1); font-weight: 700">
  333. {{ item.unitName }}
  334. </div>
  335. </div>
  336. </div>
  337. </li>
  338. </ul>
  339. </div>
  340. </div>
  341. </div>
  342. </template>
  343. <script>
  344. import CountryIndividualProfiles from '@/views/countryInformation/CountryIndividualProfiles'
  345. import countryResources from '@/views/countryInformation/countryResources'
  346. import countryEnergyPowerPlanning from '@/views/countryInformation/countryEnergyPowerPlanning'
  347. import countryProjectStatus from '@/views/countryInformation/countryProjectStatus'
  348. import countryDevelopmentGuidelines from '@/views/countryInformation/countryDevelopmentGuidelines'
  349. import countryLawAndRegulations from '@/views/countryInformation/countryLawsAndRegulations'
  350. import { getCountry, getInformationList } from '@/api/country/countryList'
  351. import {
  352. getFollowModeNumlByModelIdAndUserId,
  353. saveFollowModelLanguage,
  354. } from '@/api/operation/basePortalModelFollowInfo'
  355. import { getToken } from '@/utils/auth'
  356. import Base from '@/views/base/Base'
  357. import Clipboard from 'clipboard'
  358. import LoginMusk from '@/components/LoginMusk'
  359. import { getBaseProjectViews } from '@/api/project/baseProjectView'
  360. import { getBaseUnitViews } from '@/api/baseUnitView'
  361. // import {getCountry,getInformationList} from '@/api/country/countryList'
  362. import { addIntegral } from '@/utils/toCompleteTask'
  363. import { getUserPointPage } from '@/api/user'
  364. import _ from 'lodash'
  365. export default {
  366. name: 'countryNationalSpace',
  367. extends: Base,
  368. components: {
  369. CountryIndividualProfiles,
  370. LoginMusk,
  371. countryResources,
  372. countryEnergyPowerPlanning,
  373. countryProjectStatus,
  374. countryDevelopmentGuidelines,
  375. countryLawAndRegulations,
  376. },
  377. data() {
  378. return {
  379. dialogVisible: false,
  380. enterpriseDetails: '',
  381. informationsClass: '2',
  382. toViewLogin: false,
  383. id: this.$route.query.key
  384. ? this.$route.query.key
  385. : this.$route.params.key
  386. ? this.$route.params.key
  387. : '',
  388. language: '',
  389. img: [
  390. {
  391. src: 'u6668.png',
  392. },
  393. {
  394. src: 'u6676.png',
  395. },
  396. {
  397. src: 'u6720.png',
  398. },
  399. {
  400. src: 'u6763.png',
  401. },
  402. {
  403. src: 'u6668.png',
  404. },
  405. {
  406. src: 'u6720.png',
  407. },
  408. ],
  409. initData: {},
  410. initData1: [],
  411. initData2: [],
  412. initData3: [],
  413. params: {
  414. pageNo: 1,
  415. pageSize: 4,
  416. language: '',
  417. phaseType: '',
  418. unitCountry: '',
  419. //0为默认排序,1为关注排序
  420. descStatus: 0,
  421. technicalCategories: '',
  422. status: 1,
  423. },
  424. unitPage: {
  425. pageSize: "4",
  426. pageNo: "1",
  427. areDict: '',
  428. language: '',
  429. },
  430. num: 0,
  431. uniNum: 0,
  432. enterprise: [],
  433. screen1s: {
  434. value: 'common.Category',
  435. item: [],
  436. },
  437. screen2s: {
  438. value: 'common.phaseType',
  439. item: [],
  440. },
  441. ifcommon: false, // 是否关注
  442. user: {
  443. umsUser: {},
  444. },
  445. pointStatus: null,
  446. isToken: null,
  447. }
  448. },
  449. created() {
  450. this.enterpriseDetails = this.$route.query.key
  451. },
  452. watch: {
  453. '$i18n.locale'() {
  454. this.getCountryIdList()
  455. this.language = this.$i18n.locale.toUpperCase()
  456. // this.getInfoList();
  457. },
  458. },
  459. mounted() {
  460. this.init()
  461. this.getCountryIdList() // 获取基本信息
  462. // this.getInfoList();
  463. },
  464. methods: {
  465. init() {
  466. this.isToken = getToken()
  467. if (this.isToken) {
  468. getUserPointPage().then((res) => {
  469. this.pointStatus = res.data.umsUserPoints[0].pointStatus
  470. })
  471. }
  472. },
  473. LoginBack(data) {
  474. this.toViewLogin = false
  475. },
  476. Changethebatch() {
  477. if (this.params.pageNo * 5 <= this.num) {
  478. //this.$message(this.$t('common.Nodataavailable'));
  479. this.params.pageNo++
  480. this.getInfoList()
  481. }
  482. },
  483. ChangeUnitBatch() {
  484. console.log("this.unitPage.pageNo",this.unitPage.pageNo)
  485. console.log("his.uniNum",this.uniNum)
  486. if (this.unitPage.pageNo * 5 <= this.uniNum) {
  487. //this.$message(this.$t('common.Nodataavailable'));
  488. this.unitPage.pageNo++
  489. this.getRecommended()
  490. }
  491. },
  492. dialogVisibleChange() {
  493. this.dialogVisible = true
  494. },
  495. getCommonList() {
  496. let user = window.localStorage.getItem('user')
  497. if (user) {
  498. var users = JSON.parse(user)
  499. var userId = users.userId
  500. getFollowModeNumlByModelIdAndUserId(
  501. this.initData.baseEntityId,
  502. 'country',
  503. userId
  504. ).then((res) => {
  505. this.ifcommon = res.data
  506. })
  507. }
  508. },
  509. getInfoList() {
  510. let that = this
  511. this.params.language = this.$i18n.locale.toUpperCase()
  512. this.params.unitCountry = that.country
  513. this.params.continentCountry = that.initData.areDict
  514. getBaseProjectViews(this.params).then((result) => {
  515. // console.log(this.params);
  516. var data = result.data
  517. // console.log(data.baseProjectViews,'----------------------------------------------')
  518. if (data.baseProjectViews) {
  519. this.num = data.page.totalCount
  520. this.initData2 = data.baseProjectViews
  521. data.baseProjectViews.forEach((i) => {
  522. i.setDownDate = this.formatDate(i.setDownDate, 'YYYY-MM-DD')
  523. i.setUpDate = this.formatDate(i.setUpDate, 'YYYY-MM-DD')
  524. })
  525. data.baseProjectViews.forEach((item, index) => {
  526. item.projectLabel = item.projectLabel
  527. ? item.projectLabel.split(',')
  528. : ''
  529. })
  530. } else {
  531. this.initData2 = []
  532. this.num = ''
  533. }
  534. })
  535. },
  536. //获取企业展示信息
  537. getRecommended(){
  538. const that =this;
  539. console.log("这是进入的数据内容了")
  540. /* let unitPage={
  541. recommendFlag:'y',
  542. pageSize: "4",
  543. pageNo: "1",
  544. areDict: that.initData.areDict,
  545. language:this.$i18n.locale.toUpperCase(),
  546. descStatus:'0',
  547. }*/
  548. this.unitPage.areDict = that.initData.areDict;
  549. this.unitPage.language = this.$i18n.locale.toUpperCase();
  550. getBaseUnitViews(this.unitPage).then((res) => {
  551. if (res.data.baseUnitViews) {
  552. this.uniNum = res.data.page.totalCount;
  553. that.initData3 = res.data.baseUnitViews;
  554. console.log(res.data.baseUnitViews,that.init);
  555. } else {
  556. this.initData3 = []
  557. this.uniNum = ''
  558. // this.$message("当前推荐企业暂无信息");
  559. }
  560. this.loading = false;
  561. });
  562. },
  563. //跳转正常企业
  564. toViewTargtBack(router,json){
  565. this.$store.commit('modify', router);
  566. window.localStorage.setItem('router', router);
  567. const { href } = this.$router.resolve({
  568. name: router,
  569. query: {
  570. key: json.baseEntityId
  571. }
  572. });
  573. window.open(href, '_blank');
  574. },
  575. getCountryIdList() {
  576. let page = {
  577. baseEntityId: this.id,
  578. language: this.$i18n.locale.toUpperCase(),
  579. }
  580. getCountry(page).then((res) => {
  581. console.log(res)
  582. if (res.data) {
  583. this.initData = res.data.baseCountryViews[0]
  584. if (this.initData.are == 'NorthAmerica') {
  585. this.initData.are = 'North America'
  586. }
  587. if (this.initData.are == 'SouthAmerica') {
  588. this.initData.are = 'South America'
  589. }
  590. this.initData.photo = this.initData.photo.split(',')
  591. this.getInfoList()
  592. this.getRecommended()
  593. this.getCommonList() // 查询是否关注
  594. }
  595. })
  596. let list = {
  597. pageSize: 5,
  598. pageNo: 1,
  599. businessType: 'countryShow',
  600. businessId: this.id,
  601. typeDict: 1,
  602. language: this.$i18n.locale.toUpperCase(),
  603. }
  604. getInformationList(list).then((res) => {
  605. this.initData1 = res.data.allDataList
  606. })
  607. },
  608. // shareChange() {
  609. // if (this.ifcommon) {
  610. // this.saveFollowModelDo("unfollow");
  611. // } else {
  612. // this.saveFollowModelDo("follow");
  613. // }
  614. // },
  615. shareChange: _.throttle(function () {
  616. if (this.ifcommon) {
  617. this.saveFollowModelDo('unfollow')
  618. } else {
  619. this.saveFollowModelDo('follow')
  620. }
  621. }, 3000),
  622. saveFollowModelDo: function (followType) {
  623. let user = window.localStorage.getItem('user')
  624. let tokenDetaile = this.$Cookies.get('token')
  625. let that = this
  626. if (!tokenDetaile) {
  627. // this.$message.warning(this.$i18n.locale=='zh'?"请先登录":"Please login first");
  628. this.toViewLogin = true
  629. } else {
  630. var users = JSON.parse(user)
  631. var token = '' + getToken()
  632. var projectId = this.initData.baseEntityId
  633. var userId = users.userId
  634. // 接口逻辑
  635. this.submitHandler((token) => {
  636. saveFollowModelLanguage(
  637. that.language,
  638. projectId,
  639. 'country',
  640. userId,
  641. followType,
  642. token
  643. )
  644. .then((result) => {
  645. if (
  646. this.user.umsUser.userUsertypeDict !== '2' &&
  647. this.pointStatus == 'y'
  648. ) {
  649. addIntegral('point_task_attention', '3')
  650. }
  651. this.$message({
  652. message: result.data,
  653. type: 'success',
  654. })
  655. this.ifcommon = !this.ifcommon
  656. this.resetToken()
  657. })
  658. .catch((error) => {
  659. // 此处你的业务代码
  660. })
  661. })
  662. }
  663. },
  664. copy() {
  665. var _this = this
  666. var clipboard = new Clipboard('.btn')
  667. clipboard.on('success', (e) => {
  668. // 释放内存
  669. this.$message({
  670. message: '复制项目已成功',
  671. type: 'success',
  672. })
  673. // clipboard.destroy();
  674. })
  675. clipboard.on('error', (e) => {
  676. // 不支持复制
  677. this.$message({
  678. message: '该浏览器不支持自动复制',
  679. type: 'warning',
  680. })
  681. // 释放内存
  682. // clipboard.destroy();
  683. })
  684. },
  685. getIconUrl(url) {
  686. return require('@/assets/img/realTimeInfo/' + url)
  687. },
  688. toView(router, json) {
  689. this.$router.push({ name: router, query: { key: json } })
  690. },
  691. screenBack(data) {
  692. console.log(data, 'screenBackscreenBackscreenBackscreenBack')
  693. },
  694. screen(i) {
  695. this.index = i
  696. },
  697. getInformation(num) {
  698. this.informationsClass = num
  699. },
  700. },
  701. }
  702. </script>
  703. <!-- Add "scoped" attribute to limit CSS to this component only -->
  704. <style scoped>
  705. .plateCountry::after {
  706. content: '';
  707. }
  708. .threeLine {
  709. overflow: hidden;
  710. text-overflow: ellipsis;
  711. display: -webkit-box;
  712. -webkit-line-clamp: 3;
  713. -webkit-box-orient: vertical;
  714. }
  715. .box {
  716. margin-top: 10px;
  717. background: #fff;
  718. /* height: 500px; */
  719. padding: 20px 0;
  720. }
  721. .crumbs {
  722. margin-left: 20px;
  723. }
  724. body {
  725. margin: 0;
  726. }
  727. .swipers {
  728. position: absolute;
  729. top: 30px;
  730. left: 10px;
  731. width: 49%;
  732. height: 313px;
  733. }
  734. .details {
  735. position: absolute;
  736. top: 30px;
  737. left: 624px;
  738. width: 47%;
  739. /* height: 390px; */
  740. }
  741. .swiper-container {
  742. width: 100%;
  743. height: 300px;
  744. margin-left: auto;
  745. margin-right: auto;
  746. }
  747. .swiper-slide {
  748. background-size: cover;
  749. background-position: center;
  750. }
  751. .gallery-top {
  752. height: 80%;
  753. width: 100%;
  754. }
  755. .gallery-thumbs {
  756. height: 20%;
  757. box-sizing: border-box;
  758. padding: 10px 0;
  759. }
  760. .gallery-thumbs .swiper-slide {
  761. width: 25%;
  762. height: 100%;
  763. opacity: 0.4;
  764. }
  765. .gallery-thumbs .swiper-slide-thumb-active {
  766. opacity: 1;
  767. }
  768. .initData_label {
  769. color: #2c558a;
  770. font-weight: 700;
  771. font-size: 18px;
  772. line-height: 42px;
  773. }
  774. .enterprise_style {
  775. line-height: 50px;
  776. color: #6c819d;
  777. padding-left: 20px;
  778. font-size: 18px;
  779. font-weight: 700;
  780. margin-top: 5px;
  781. margin-left: 20px;
  782. }
  783. .enterprise_style_span {
  784. display: block;
  785. width: 85px;
  786. text-align: center;
  787. height: 100%;
  788. border-bottom: 2px solid #6699ff;
  789. }
  790. .enterprise_style_span4 {
  791. text-align: center;
  792. height: 100%;
  793. border-bottom: 2px solid #6699ff;
  794. }
  795. .enterprise_style_product tr {
  796. line-height: 30px;
  797. width: 100%;
  798. display: inline-block;
  799. border-bottom: 1px dashed #ccc;
  800. font-size: 14px;
  801. color: #6c819d;
  802. margin-bottom: 5px;
  803. }
  804. .recommend {
  805. margin-top: 15px;
  806. margin-left: 20px;
  807. }
  808. .recommend li {
  809. display: inline-block;
  810. width: 170px;
  811. /* height: 130px; */
  812. text-align: center;
  813. margin-right: 15px;
  814. }
  815. .information1 {
  816. display: inline-block;
  817. /* padding: 0 10px; */
  818. width: 190px;
  819. height: 100%;
  820. border: 1px solid rgba(228, 228, 228, 1);
  821. text-align: center;
  822. background: #f9f9f9;
  823. color: #999;
  824. }
  825. .information2 {
  826. display: inline-block;
  827. /* padding: 0 10px; */
  828. width: 190px;
  829. height: 100%;
  830. /* border-top:3px solid #2c5589; */
  831. background: #2c5589;
  832. text-align: center;
  833. color: #fff;
  834. }
  835. .information1:hover {
  836. color: #ff0036;
  837. }
  838. .continents ul,
  839. .continents2 ul {
  840. display: flex;
  841. flex-wrap: wrap;
  842. text-align: center;
  843. }
  844. .continents2 ul li {
  845. width: 24%;
  846. /* padding: 18px 30px; */
  847. background: #fff;
  848. margin-bottom: 20px;
  849. color: #999;
  850. /* height: 384px; */
  851. /* border-right: 1px solid #EAEAEA; */
  852. border: 3px solid transparent;
  853. box-shadow: 5px 5px 5px #fafafa;
  854. }
  855. .continents2 ul li:nth-of-type(5) {
  856. border-right: none;
  857. }
  858. .white p {
  859. /*width: 100%;*/
  860. /*word-break:break-all;*/
  861. }
  862. .messageConEn >>> p {
  863. word-wrap: break-word !important;
  864. }
  865. .messageConZh >>> p {
  866. /*word-break: ;*/
  867. }
  868. </style>
  869. <style>
  870. .el-dialog__body {
  871. /*word-wrap:break-word!important;*/
  872. word-break: normal;
  873. }
  874. </style>