direct.vue 35 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238
  1. <template>
  2. <div id="hall" style="background-color: #fff">
  3. <el-col :span="24">
  4. <div class="livetop">
  5. <div class="w_1200">
  6. <!-- <el-col v-if="">
  7. <el-col v-else-if="">
  8. <el-col else> -->
  9. <el-col :span="24" class="title">
  10. 吉林省计算中心对接直播大厅
  11. </el-col>
  12. <el-col :span="24" class="zhuban">
  13. <span>主办方:</span>
  14. <span>吉林省计算中心直播大厅</span>
  15. </el-col>
  16. <el-col :span="24" class="num">
  17. <p>
  18. <span>同时在线</span>
  19. <span>1人</span>
  20. </p>
  21. <p>
  22. <span>特邀嘉宾</span>
  23. <span>1人</span>
  24. </p>
  25. <p>
  26. <span>洽谈合作</span>
  27. <span>1人</span>
  28. </p>
  29. <p>
  30. <span>达成意愿</span>
  31. <span>1人</span>
  32. </p>
  33. <p>
  34. <span>展示成果</span>
  35. <span>1人</span>
  36. </p>
  37. <p>
  38. <span>发布需求</span>
  39. <span>1人</span>
  40. </p>
  41. </el-col>
  42. </div>
  43. </div>
  44. <div class="w_1200">
  45. <el-col :span="24" class="livemain">
  46. <el-col :span="24" class="livevideo">
  47. <el-col :span="24" class="left">
  48. <el-col :span="24" class="title">
  49. <span style="color: rgb(255, 132, 0);">现场</span>
  50. <span>直播</span>
  51. </el-col>
  52. <el-col :span="24" class="video">
  53. 直播换面
  54. </el-col>
  55. </el-col>
  56. <el-col :span="24" class="right">
  57. <el-col :span="24">
  58. <p>
  59. <span>交易实况</span>
  60. </p>
  61. </el-col>
  62. <el-col :span="24">
  63. <ul>
  64. <li v-for="(item, index) in directlist" :key="index">
  65. <span>[{{ item.time }}]</span> <span>{{ item.name1 }}</span> <span>与</span><span>{{ item.name2 }}</span
  66. ><span>实现对接</span>
  67. </li>
  68. </ul>
  69. </el-col>
  70. </el-col>
  71. </el-col>
  72. <el-col :span="24" class="newimage">
  73. <el-image :src="superOne" style="width:100%;height:100px;position:relative;"> </el-image>
  74. <span>使用手册</span>
  75. </el-col>
  76. <el-col :span="24" class="context">
  77. <el-tabs type="border-card">
  78. <el-tab-pane label="找技术">
  79. <el-col :span="24" class="newsheight">
  80. <ul>
  81. <li v-for="(item, index) in jishulist" :key="index">
  82. <el-col :span="14" class="lileft">
  83. <p>
  84. <el-popover placement="top-start" title="" width="500" trigger="hover">
  85. <el-col :span="24" class="detail" v-if="policyInfo.totaltype">
  86. <el-col :span="24" class="infoMess">
  87. <el-col :span="24" class="info"> 名称:{{ policyInfo.name }} </el-col>
  88. <el-col :span="24" class="info"> 类型:{{ policyInfo.product_type_name }} </el-col>
  89. <el-col :span="24" class="info"> 单价:{{ policyInfo.price }} </el-col>
  90. <el-col :span="24" class="info"> 单位:{{ policyInfo.priceunit }} </el-col>
  91. <el-col :span="24">
  92. <span class="tupian"> 图片:</span>
  93. <el-col :span="6" class="infos" v-for="(acm, index) in policyInfo.image" :key="index">
  94. <span><el-image class="newclassimage" style="width:100px;height:100px" :src="acm.url"></el-image></span>
  95. </el-col>
  96. </el-col>
  97. <el-col :span="24" class="info"> 服务范围:{{ policyInfo.scope }} </el-col>
  98. <el-col :span="24" class="info"> 描述{{ policyInfo.description }} </el-col>
  99. <el-col :span="24" class="info"> 知识产权:{{ policyInfo.property }} </el-col>
  100. <el-col :span="24" class="infos"> 简介:{{ policyInfo.introduction }} </el-col>
  101. <el-col :span="24" class="info">
  102. <el-button type="primary" class="duijie" @click="technology(policyInfo.id)">对接</el-button>
  103. </el-col>
  104. </el-col>
  105. </el-col>
  106. <span class="title" slot="reference" @mouseover="hover(item)"> {{ item.name }}</span>
  107. </el-popover>
  108. <span><el-button class="duijie" @click="technologyBtn(item.id)">对接</el-button></span>
  109. </p>
  110. <p class="newp">
  111. <span class="name"><i class="el-icon-user-solid"></i>{{ item.contact_user }}</span
  112. ><span> <i class="el-icon-phone"></i>{{ item.contact_tel }}</span>
  113. </p>
  114. <p>
  115. <span class="pspan">类型:{{ item.product_type_name }}</span
  116. ><span class="pspan">研发阶段:{{ item.phase == '0' ? '阶段成果' : '最终成果' }}</span
  117. ><span class="pspan">交易方式:{{ item.business == '0' ? '公用' : item.business == '1' ? '转让' : '竞价' }} </span
  118. ><span class="pspan">交易价格:{{ item.price }}{{ item.priceunit }}</span>
  119. </p>
  120. </el-col>
  121. <el-col :span="10" class="liright">
  122. <p>摘要:{{ item.introduction }}</p>
  123. </el-col>
  124. </li>
  125. </ul>
  126. </el-col>
  127. </el-tab-pane>
  128. <el-tab-pane label="找产品">
  129. <el-col :span="24" class="newsheight">
  130. <ul class="demand">
  131. <li class="demandList" v-for="(item, index) in demandList" :key="index">
  132. <p>
  133. <el-popover placement="top-start" title="" width="700" trigger="hover">
  134. <el-col :span="24" class="detail" v-if="policyInfo.totaltype">
  135. <el-col :span="24" class="infoMess">
  136. <el-col :span="24" class="info"> 名称:{{ policyInfo.name }} </el-col>
  137. <el-col :span="24" class="info"> 类型:{{ policyInfo.product_type_name }} </el-col>
  138. <el-col :span="24" class="info"> 单价:{{ policyInfo.price }} </el-col>
  139. <el-col :span="24" class="info"> 单位:{{ policyInfo.priceunit }} </el-col>
  140. <el-col :span="24">
  141. <span class="tupian"> 图片:</span>
  142. <el-col :span="6" class="info" v-for="(acm, index) in policyInfo.image" :key="index">
  143. <span><el-image class="newclassimage" style="width:100px;height:100px" :src="acm.url"></el-image></span>
  144. </el-col>
  145. </el-col>
  146. <el-col :span="24" class="info"> 服务范围:{{ policyInfo.scope }} </el-col>
  147. <el-col :span="24" class="infos"> 描述:{{ policyInfo.description }} </el-col>
  148. <el-col :span="24" class="info"> 知识产权:{{ policyInfo.property }} </el-col>
  149. <el-col :span="24" class="infos"> 简介:{{ policyInfo.introduction }} </el-col>
  150. <el-col :span="24" class="info">
  151. <el-button type="primary" class="duijie" @click="technology(policyInfo.id)">对接</el-button>
  152. </el-col>
  153. </el-col>
  154. </el-col>
  155. <span class="title" slot="reference" @mouseover="hover(item)"> {{ item.name }}</span>
  156. </el-popover>
  157. <el-button type="primary" size="mini" @click="technologyBtn(item.id)" class="duijie">对接</el-button>
  158. </p>
  159. <p>
  160. <span>研发阶段:{{ item.phase == '0' ? '阶段成果' : '最终成果' }}</span>
  161. <span>发布时间:{{ item.meta | getDate }}</span>
  162. </p>
  163. <p>
  164. <span>需求类型:{{ item.product_type_name }}</span>
  165. <span>{{ item.address }}</span>
  166. </p>
  167. </li>
  168. </ul>
  169. </el-col>
  170. </el-tab-pane>
  171. <el-tab-pane label="找服务">
  172. <el-col :span="24" class="newsheight">
  173. <ul class="service">
  174. <li class="serviceList" v-for="(item, index) in serviceList" :key="index">
  175. <p class="company">
  176. <el-popover placement="top-start" title="" width="700" trigger="hover">
  177. <el-col :span="24" class="detail" v-if="policyInfo.totaltype">
  178. <el-col :span="24" class="infoMess">
  179. <el-col :span="24" class="info"> 名称:{{ policyInfo.name }} </el-col>
  180. <el-col :span="24" class="info"> 类型:{{ policyInfo.product_type_name }} </el-col>
  181. <el-col :span="24" class="info"> 单价:{{ policyInfo.price }} </el-col>
  182. <el-col :span="24" class="info"> 单位:{{ policyInfo.priceunit }} </el-col>
  183. <el-col :span="24">
  184. <span class="tupian"> 图片:</span>
  185. <el-col :span="6" class="infos" v-for="(acm, index) in policyInfo.image" :key="index">
  186. <span><el-image class="newclassimage" style="width:100px;height:100px" :src="acm.url"></el-image></span>
  187. </el-col>
  188. </el-col>
  189. <el-col :span="24" class="info"> 服务范围:{{ policyInfo.scope }} </el-col>
  190. <el-col :span="24" class="info"> 描述{{ policyInfo.description }} </el-col>
  191. <el-col :span="24" class="info"> 知识产权:{{ policyInfo.property }} </el-col>
  192. <el-col :span="24" class="infos"> 简介:{{ policyInfo.introduction }} </el-col>
  193. <el-col :span="24" class="info">
  194. <el-button type="primary" class="duijie" @click="technology(policyInfo.id)">对接</el-button>
  195. </el-col>
  196. </el-col>
  197. </el-col>
  198. <span class="title" slot="reference" @mouseover="hover(item)"> {{ item.name }}</span>
  199. </el-popover>
  200. </p>
  201. <div class="serviceDown">
  202. <el-image :src="item.image[0].url"></el-image>
  203. <p>联系人:{{ item.contact_user }}</p>
  204. <p>
  205. <span>服务类型:</span>
  206. <span class="type2">{{ item.product_type_name }}</span>
  207. </p>
  208. <p>电话:{{ item.contact_tel }}</p>
  209. <p>单价:{{ item.price }} 单位:{{ item.priceunit }}</p>
  210. <p>知识产权:{{ item.property }}</p>
  211. </div>
  212. </li>
  213. </ul>
  214. </el-col>
  215. </el-tab-pane>
  216. <el-tab-pane label="找专家">
  217. <el-col :span="24" class="newsheight">
  218. <ul class="expert">
  219. <li class="expertList" v-for="(item, index) in expertList" :key="index">
  220. <el-image :src="item.imgpath"></el-image>
  221. <div>
  222. <p>
  223. <el-popover placement="top-start" title="" width="700" trigger="hover">
  224. <el-col :span="24" class="infoMess">
  225. <el-col :span="24" class="info"> 专家名称:{{ policyInfo.name }} </el-col>
  226. <el-col :span="24" class="info"> <el-image style="width:100px;height:100px" :src="policyInfo.imgpath"></el-image></el-col>
  227. <el-col :span="24" class="info"> 民族:{{ policyInfo.nation }} </el-col>
  228. <el-col :span="24" class="info"> 学术成就:{{ policyInfo.achievement }} </el-col>
  229. <el-col :span="24" class="info"> 身份证号:{{ policyInfo.cardnumber }} </el-col>
  230. <el-col :span="24" class="info"> 毕业院校:{{ policyInfo.school }} </el-col>
  231. <el-col :span="24" class="info"> 学位:{{ policyInfo.degree }} </el-col>
  232. <el-col :span="24" class="info"> 电子邮箱:{{ policyInfo.email }} </el-col>
  233. <el-col :span="24" class="info"> 学历:{{ policyInfo.eduback }} </el-col>
  234. <el-col :span="24" class="info"> 职务:{{ policyInfo.position }} </el-col>
  235. <el-col :span="24" class="info"> 从事专业:{{ policyInfo.professional }} </el-col>
  236. <el-col :span="24" class="info"> 手机号:{{ policyInfo.phone }} </el-col>
  237. <el-col :span="24" class="infos"> 业务工作简介:{{ policyInfo.job_profile }} </el-col>
  238. <el-col :span="24" class="info">
  239. <el-button type="primary" class="duijie" @click="duizhuanjia(policyInfo.id)">对接</el-button>
  240. </el-col>
  241. </el-col>
  242. <span class="title" slot="reference" @mouseover="zhuanjia(item)"> {{ item.name }}</span>
  243. </el-popover>
  244. <span>{{ item.nation }}</span>
  245. </p>
  246. <p>职务:{{ item.position }}</p>
  247. <p>从事领域:{{ item.field }}</p>
  248. </div>
  249. </li>
  250. </ul>
  251. </el-col>
  252. </el-tab-pane>
  253. </el-tabs>
  254. </el-col>
  255. <el-col :span="24" class="newimage2">
  256. <el-image :src="two" style="width:100%;height:100px;position:relative;"> </el-image>
  257. </el-col>
  258. <div class="fangtan">
  259. <el-col :span="7" class="jiabin">
  260. <p class="jiabintop">
  261. <span>嘉宾访谈</span>
  262. <el-link :underline="false">MORE</el-link>
  263. </p>
  264. <div class="jiabinlist">
  265. <ul>
  266. <li v-for="(ref, index) in jiabinlist" :key="index">
  267. <img :src="ref.url" />
  268. <p>
  269. <span class="textOver">{{ ref.title }}</span>
  270. <span>{{ ref.date }}</span>
  271. <span class="text">{{ ref.context }} </span>
  272. </p>
  273. </li>
  274. </ul>
  275. </div>
  276. </el-col>
  277. <el-col :span="7" class="jiabin luyan">
  278. <p class="jiabintop luyanTop">
  279. <span>项目路演</span>
  280. <el-link :underline="false">MORE</el-link>
  281. </p>
  282. <div class="luyanList">
  283. <ul>
  284. <li v-for="(item, index) in luyanList" :key="index">
  285. <p>
  286. <span>{{ item.title }}</span>
  287. <span>浏览:{{ item.num }}</span>
  288. </p>
  289. <p>
  290. <span>所在地区:{{ item.city }} | 所属行业:{{ item.hy }}</span>
  291. <span>项目融资方式:{{ item.xurz }}</span>
  292. </p>
  293. </li>
  294. </ul>
  295. </div>
  296. </el-col>
  297. <el-col :span="7" class="chat">
  298. <chat></chat>
  299. </el-col>
  300. </div>
  301. </el-col>
  302. </div>
  303. </el-col>
  304. <div class="pz_down">
  305. <live-foot></live-foot>
  306. </div>
  307. <!-- <div class="suspenInfo">
  308. <el-link :underline="false" @click="clickBtn()" target="_blank">直播中心</el-link>
  309. </div> -->
  310. </div>
  311. </template>
  312. <script>
  313. import liveFoot from '@/layout/live/foot.vue';
  314. import chat from '@/components/parts/chat.vue';
  315. import { mapState, createNamespacedHelpers } from 'vuex';
  316. const { mapActions: mapProduct } = createNamespacedHelpers('marketproduct');
  317. const { mapActions: market } = createNamespacedHelpers('market');
  318. const { mapActions: dock } = createNamespacedHelpers('dock');
  319. const { mapActions: talentExperts } = createNamespacedHelpers('talentExperts');
  320. import _ from 'loadsh';
  321. export default {
  322. name: 'hall',
  323. props: {},
  324. filters: {
  325. getDate(meta) {
  326. let createdAt = _.get(meta, `createdAt`);
  327. let date = new Date(createdAt)
  328. .toLocaleDateString()
  329. .replace('/', '-')
  330. .replace('/', '-');
  331. return date;
  332. },
  333. },
  334. components: {
  335. chat,
  336. liveFoot,
  337. },
  338. data: () => ({
  339. visible: false,
  340. dialogVisible: false,
  341. dialogVisibles: false,
  342. dialogVisibless: false,
  343. dialogVisiblesss: false,
  344. directlist: [
  345. {
  346. time: '2019-03-05',
  347. name1: '中科院宁波先进制造所',
  348. name2: '深圳市华尔威体育用品',
  349. },
  350. {
  351. time: '2019-03-05',
  352. name1: '中科院宁波先进制造所',
  353. name2: '深圳市华尔威体育用品',
  354. },
  355. {
  356. time: '2019-03-05',
  357. name1: '中科院宁波先进制造所',
  358. name2: '深圳市华尔威体育用品',
  359. },
  360. {
  361. time: '2019-03-05',
  362. name1: '中科院宁波先进制造所',
  363. name2: '深圳市华尔威体育用品',
  364. },
  365. {
  366. time: '2019-03-05',
  367. name1: '中科院宁波先进制造所',
  368. name2: '深圳市华尔威体育用品',
  369. },
  370. {
  371. time: '2019-03-05',
  372. name1: '中科院宁波先进制造所',
  373. name2: '深圳市华尔威体育用品',
  374. },
  375. {
  376. time: '2019-03-05',
  377. name1: '中科院宁波先进制造所',
  378. name2: '深圳市华尔威体育用品',
  379. },
  380. {
  381. time: '2019-03-05',
  382. name1: '中科院宁波先进制造所',
  383. name2: '深圳市华尔威体育用品',
  384. },
  385. ],
  386. jiabinlist: [
  387. {
  388. url: 'https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg',
  389. title: '测试title',
  390. date: '2017-03-04',
  391. context: '1231232121212121212121212121212121212121231111111111111111111111111111111111111111121212121212121212121212121212121212121212121212121321',
  392. },
  393. {
  394. url: 'https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg',
  395. title: '测试title',
  396. date: '2017-03-04',
  397. context: '1231232121212121212121212121212121212121231111111111111111111111111111111111111111121212121212121212121212121212121212121212121212121321',
  398. },
  399. {
  400. url: 'https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg',
  401. title: '测试title',
  402. date: '2017-03-04',
  403. context: '1231232121212121212121212121212121212121231111111111111111111111111111111111111111121212121212121212121212121212121212121212121212121321',
  404. },
  405. {
  406. url: 'https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg',
  407. title: '测试title',
  408. date: '2017-03-04',
  409. context: '1231232121212121212121212121212121212121231111111111111111111111111111111111111111121212121212121212121212121212121212121212121212121321',
  410. },
  411. ],
  412. policyInfo: {},
  413. jishulist: [],
  414. technologyList: [],
  415. // 找产品
  416. demandList: [],
  417. // 找服务
  418. serviceList: [],
  419. // 找专家
  420. expertList: [],
  421. // 路演
  422. luyanList: [
  423. {
  424. title: '项目路演',
  425. num: '1234',
  426. city: '吉林省',
  427. hy: '所属行业',
  428. xurz: '股权融资',
  429. },
  430. {
  431. title: '项目路演',
  432. num: '1234',
  433. city: '吉林省',
  434. hy: '所属行业',
  435. xurz: '股权融资',
  436. },
  437. {
  438. title: '项目路演',
  439. num: '1234',
  440. city: '吉林省',
  441. hy: '所属行业',
  442. xurz: '股权融资',
  443. },
  444. {
  445. title: '项目路演',
  446. num: '1234',
  447. city: '吉林省',
  448. hy: '所属行业',
  449. xurz: '股权融资',
  450. },
  451. ],
  452. superOne: require('@/assets/live/main1.png'),
  453. two: require('@/assets/live/top_bg.png'),
  454. superOnes: require('@/assets/live/测试图片.jpg'),
  455. }),
  456. created() {
  457. this.searchInfo();
  458. },
  459. methods: {
  460. ...mapProduct({ mapProductQuery: 'query' }),
  461. ...market({ marketFetch: 'fetch' }),
  462. ...dock({ dockQuery: 'query' }),
  463. ...talentExperts({ expertQuery: 'query' }),
  464. async searchInfo() {
  465. let res = await this.mapProductQuery({ skip: 0, limit: 4, totaltype: '0' });
  466. console.log(res);
  467. if (this.$checkRes(res)) this.$set(this, `jishulist`, res.data);
  468. res = await this.mapProductQuery({ skip: 0, limit: 4, totaltype: '1' });
  469. console.log(res);
  470. if (this.$checkRes(res)) this.$set(this, `demandList`, res.data);
  471. res = await this.mapProductQuery({ skip: 0, limit: 4, totaltype: '2' });
  472. console.log(res);
  473. if (this.$checkRes(res)) this.$set(this, `serviceList`, res.data);
  474. console.log(res);
  475. res = await this.expertQuery({ skip: 0, limit: 4 });
  476. console.log(res);
  477. if (this.$checkRes(res)) this.$set(this, `expertList`, res.data);
  478. },
  479. onclickjs(item) {
  480. console.log(item);
  481. this.$set(this, `policyInfo`, item);
  482. },
  483. //划过展示
  484. hover: function(item) {
  485. this.$set(this, `policyInfo`, item);
  486. console.log(item);
  487. },
  488. zhuanjia(item) {
  489. console.log(item);
  490. this.dialogVisible = true;
  491. this.$set(this, `policyInfo`, item);
  492. },
  493. //对接
  494. technologyBtn(id) {
  495. console.log(id);
  496. this.$router.push({ path: '/live/hall/dock/dockDetail', query: { id: id } });
  497. },
  498. technology(id) {
  499. this.$router.push({ path: '/live/hall/dock/dockDetail', query: { id: id } });
  500. },
  501. duizhuanjia(id) {
  502. this.$router.push({ path: '/live/hall/dock/zhuanjiaDetail', query: { id: id } });
  503. },
  504. //直播中心
  505. clickBtn() {
  506. this.$router.push({ path: '/live/liveList' });
  507. },
  508. handleClose(done) {
  509. this.$confirm('确认关闭?')
  510. .then(_ => {
  511. done();
  512. })
  513. .catch(_ => {});
  514. },
  515. },
  516. computed: {
  517. pageTitle() {
  518. return `${this.$route.meta.title}`;
  519. },
  520. },
  521. metaInfo() {
  522. return { title: this.$route.meta.title };
  523. },
  524. };
  525. </script>
  526. <style lang="less" scoped>
  527. .w_1200 {
  528. margin: 0 auto;
  529. width: 1200px;
  530. }
  531. .livetop {
  532. width: 100%;
  533. height: 487px;
  534. overflow: hidden;
  535. background-image: url(../assets/live/top_3.png);
  536. }
  537. .livetop .title {
  538. text-align: center;
  539. color: #fff;
  540. position: relative;
  541. width: 100%;
  542. font-size: 45px;
  543. top: 65px;
  544. }
  545. .livetop .zhuban {
  546. text-align: center;
  547. color: #fff;
  548. position: relative;
  549. width: 100%;
  550. font-size: 25px;
  551. top: 140px;
  552. }
  553. .livetop .zhuban span:first-child {
  554. font-weight: 700;
  555. }
  556. .livetop .num {
  557. position: relative;
  558. top: 190px;
  559. color: #fff;
  560. }
  561. .livetop .num p {
  562. float: left;
  563. width: 15%;
  564. background: #fff;
  565. margin: 0 14px 0 0 !important;
  566. color: #000;
  567. height: 50px;
  568. line-height: 50px;
  569. border-radius: 30px;
  570. }
  571. .livetop .num p span:first-child {
  572. display: inline-block;
  573. width: 56%;
  574. text-align: center;
  575. height: 50px;
  576. line-height: 50px;
  577. font-size: 16px;
  578. background: red;
  579. border-radius: 30px;
  580. color: #fff;
  581. font-weight: 700;
  582. }
  583. .livetop .num p span:last-child {
  584. display: inline-block;
  585. width: 42%;
  586. text-align: center;
  587. font-size: 15px;
  588. font-weight: 700;
  589. }
  590. .livemain {
  591. position: relative;
  592. top: -55px;
  593. z-index: 999;
  594. }
  595. .livemain .livevideo {
  596. height: 470px;
  597. overflow: hidden;
  598. }
  599. .livemain .livevideo .left {
  600. float: left;
  601. width: 50%;
  602. height: 460px;
  603. overflow: hidden;
  604. border: 5px solid #000;
  605. background: #fff;
  606. border-radius: 5px;
  607. }
  608. .livemain .livevideo .left .title {
  609. padding: 0 10px;
  610. height: 40px;
  611. line-height: 40px;
  612. font-size: 20px;
  613. font-weight: 700;
  614. }
  615. p {
  616. margin: 0 !important;
  617. }
  618. .livemain .livevideo .left .video {
  619. height: 400px;
  620. margin: 0 10px 10px 10px;
  621. border: 2px solid #ccc;
  622. width: 97%;
  623. }
  624. .livemain .livevideo .right {
  625. width: 50%;
  626. height: 460px;
  627. overflow: hidden;
  628. background-color: #6e042c;
  629. border-top-left-radius: 5px;
  630. border-bottom-left-radius: 5px;
  631. overflow: hidden;
  632. }
  633. .livemain .livevideo .right p {
  634. color: #fff;
  635. width: 100%;
  636. float: left;
  637. height: 40px;
  638. line-height: 40px;
  639. padding: 0 10px;
  640. background: #fe950e;
  641. }
  642. .right ul {
  643. padding: 0;
  644. margin: 0;
  645. }
  646. .right ul li {
  647. height: 43px;
  648. line-height: 40px;
  649. font-size: 14px;
  650. color: #fff;
  651. border-bottom: 1px solid #ff8500;
  652. padding: 0 0 0 10px;
  653. margin: 0 20px;
  654. overflow: hidden;
  655. white-space: nowrap;
  656. text-overflow: ellipsis;
  657. }
  658. .right ul li span:first-child {
  659. color: #ff8500;
  660. }
  661. .right ul li span {
  662. margin: 0 20px 0 0;
  663. }
  664. .newimage {
  665. margin: 20px 0 0 0;
  666. background-size: 100% * 80px;
  667. background-size: cover;
  668. height: 100px;
  669. width: 100%;
  670. margin-bottom: 5px;
  671. position: relative;
  672. }
  673. .newimage span {
  674. position: absolute;
  675. top: 30px;
  676. left: 46%;
  677. color: #ffffff;
  678. font-size: 36px;
  679. // position: relative;
  680. // top: 30px;
  681. z-index: 999;
  682. }
  683. /deep/.el-tabs--border-card {
  684. background: #fff;
  685. border: 1px solid #c20808;
  686. box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12), 0 0 6px 0 rgba(0, 0, 0, 0.04);
  687. }
  688. /deep/.el-tabs--border-card > .el-tabs__header {
  689. background-color: #f5f7fa;
  690. border-bottom: 1px solid #c20808;
  691. border-right: 1px solid #c20808;
  692. border-left: 1px solid #c20808;
  693. margin: 0;
  694. }
  695. /deep/.el-tabs--border-card > .el-tabs__header .el-tabs__item.is-active {
  696. background-color: #fff;
  697. border-right-color: #c20808;
  698. border-left-color: #c20808;
  699. color: #ff8500;
  700. }
  701. .context {
  702. margin: 30px 0 0 0;
  703. }
  704. .context ul {
  705. padding: 0;
  706. margin: 0;
  707. margin-block-start: 0;
  708. margin-block-end: 0;
  709. margin-inline-start: 0;
  710. margin-inline-end: 0;
  711. padding-inline-start: 0;
  712. }
  713. .context ul li {
  714. margin: 0 20px;
  715. overflow: hidden;
  716. // white-space: nowrap;
  717. text-overflow: ellipsis;
  718. border-bottom: 1px solid #ff8500;
  719. height: 150px;
  720. }
  721. /deep/.el-tabs--border-card > .el-tabs__content {
  722. padding: 0px 15px 0 0;
  723. }
  724. .context ul li p .title {
  725. display: inline-block;
  726. width: 85%;
  727. font-size: 18px;
  728. }
  729. .context ul li p .title:hover {
  730. color: #ff8500;
  731. font-weight: bold;
  732. }
  733. .lileft {
  734. width: 60%;
  735. }
  736. .liright {
  737. border: 1px solid #c20808;
  738. height: 119px;
  739. margin: 15px 0 15px 0;
  740. width: 40%;
  741. }
  742. .liright p {
  743. float: left;
  744. width: 96%;
  745. overflow: hidden;
  746. text-overflow: ellipsis;
  747. -webkit-line-clamp: 3;
  748. word-break: break-all;
  749. display: -webkit-box;
  750. -webkit-box-orient: vertical;
  751. padding: 10px;
  752. height: 67px;
  753. }
  754. .duijie {
  755. color: #fff;
  756. background-color: #ff8500;
  757. text-align: center;
  758. padding: 10px 15px 10px 15px;
  759. margin: 10px 0 0 0;
  760. }
  761. .duijie:hover {
  762. background-color: #0279d5;
  763. }
  764. .newp {
  765. font-size: 16px;
  766. height: 50px;
  767. margin: 0 0 10px 0 !important;
  768. line-height: 50px;
  769. }
  770. .newp i {
  771. color: #ff8500;
  772. }
  773. .name {
  774. display: inline-block;
  775. width: 430px;
  776. font-size: 16px;
  777. }
  778. .pspan {
  779. display: inline-block;
  780. width: 25%;
  781. font-size: 16px;
  782. }
  783. .fangtan {
  784. float: left;
  785. height: 525px;
  786. overflow: hidden;
  787. }
  788. .fangtan .jiabin {
  789. width: 31%;
  790. border-radius: 5px;
  791. box-shadow: 0 0 5px #c20808;
  792. padding: 0 10px 0px 10px;
  793. margin: 4px 15px 0 3px;
  794. height: 515px;
  795. }
  796. .jiabin .jiabintop {
  797. height: 30px;
  798. line-height: 30px;
  799. }
  800. .jiabin .jiabintop span {
  801. display: inline-block;
  802. padding: 0 10px;
  803. height: 30px;
  804. color: #fff;
  805. background-color: #ff8500;
  806. border-bottom-left-radius: 10px;
  807. border-bottom-right-radius: 10px;
  808. }
  809. .jiabin .jiabintop a {
  810. float: right;
  811. }
  812. .jiabin .jiabinlist ul li {
  813. float: left;
  814. width: 100%;
  815. border-bottom: 1px dashed #ff8500;
  816. padding: 20px 0;
  817. }
  818. .jiabin .jiabinlist ul li:last-child {
  819. border-bottom: none;
  820. float: left;
  821. width: 100%;
  822. }
  823. .jiabin .jiabinlist ul li:hover p span:first-child {
  824. color: #0e90d2;
  825. }
  826. .jiabin .jiabinlist ul li img {
  827. float: left;
  828. width: 20%;
  829. height: 80px;
  830. }
  831. .jiabin .jiabinlist ul li p {
  832. float: left;
  833. width: 71%;
  834. padding: 0 0 0 10px;
  835. }
  836. .jiabin .jiabinlist ul li p span:first-child {
  837. float: left;
  838. width: 65%;
  839. font-size: 18px;
  840. }
  841. .jiabin .jiabinlist ul li p span:nth-child(2n) {
  842. float: left;
  843. width: 35%;
  844. font-size: 14px;
  845. text-align: right;
  846. padding: 2px 0 0 0;
  847. }
  848. .jiabin .jiabinlist ul li p span:last-child {
  849. float: left;
  850. width: 100%;
  851. font-size: 14px;
  852. color: #888;
  853. overflow: hidden;
  854. text-overflow: ellipsis;
  855. -webkit-line-clamp: 2;
  856. word-break: break-all;
  857. display: -webkit-box;
  858. -webkit-box-orient: vertical;
  859. }
  860. .fangtan .luyan {
  861. width: 33%;
  862. border-radius: 5px;
  863. box-shadow: 0 0 5px #c20808;
  864. padding: 0 10px 0px 10px;
  865. margin: 4px 10px 0 3px;
  866. height: 515px;
  867. overflow: hidden;
  868. }
  869. .luyanList {
  870. padding: 10px 0 0 0;
  871. }
  872. .luyanList ul {
  873. margin: 0;
  874. padding: 0;
  875. list-style-type: none;
  876. }
  877. .luyanList ul li {
  878. float: left;
  879. border-radius: 10px;
  880. padding: 5px 10px;
  881. margin: 0 0 10px 0;
  882. height: 95px;
  883. border: 1px solid #ff8500;
  884. }
  885. .luyanList ul li:nth-child(5) {
  886. border: 1px solid #ff8500;
  887. float: left;
  888. border-radius: 10px;
  889. padding: 5px 10px;
  890. margin: 0 0 22px 0;
  891. // width: 96%;
  892. height: 95px;
  893. }
  894. .luyanList ul li:hover {
  895. box-shadow: 0 0 5px red;
  896. }
  897. .luyanList ul li p:first-child span:first-child {
  898. font-size: 18px;
  899. float: left;
  900. width: 80%;
  901. }
  902. .luyanList ul li p:first-child span:last-child {
  903. float: left;
  904. width: 20%;
  905. color: #c20808;
  906. }
  907. .luyanList ul li p:last-child span {
  908. float: left;
  909. width: 100%;
  910. padding: 5px 0;
  911. font-size: 14px;
  912. color: #666;
  913. }
  914. .chat {
  915. float: left;
  916. width: 33%;
  917. }
  918. // 找产品
  919. .demand {
  920. overflow: hidden;
  921. height: 547px;
  922. padding: 0;
  923. margin: 0;
  924. -webkit-margin-before: 0;
  925. margin-block-start: 0;
  926. -webkit-margin-after: 0;
  927. margin-block-end: 0;
  928. -webkit-margin-start: 0;
  929. margin-inline-start: 0;
  930. -webkit-margin-end: 0;
  931. margin-inline-end: 0;
  932. -webkit-padding-start: 0;
  933. padding-inline-start: 0;
  934. }
  935. .demand .demandList {
  936. float: left;
  937. width: 50%;
  938. border-bottom: 1px solid #ccc;
  939. margin: 0 0 20px 0;
  940. text-indent: 10px;
  941. font-size: 12px;
  942. padding: 10px 0 0 0;
  943. }
  944. .demandList:hover p:first-child {
  945. color: #005293;
  946. font-weight: bold;
  947. font-size: 16px !important;
  948. }
  949. .demand .demandList p:first-child {
  950. float: left;
  951. width: 100%;
  952. font-weight: bold;
  953. font-size: 16px !important;
  954. }
  955. .demand .demandList p:nth-child(2) {
  956. float: left;
  957. padding: 10px 0;
  958. width: 100%;
  959. }
  960. .demand .demandList p:nth-child(2) span:first-child {
  961. display: inline-block;
  962. width: 50%;
  963. text-align: left;
  964. }
  965. .demand .demandList p:nth-child(2) span:last-child {
  966. display: inline-block;
  967. width: 45%;
  968. text-align: left;
  969. }
  970. .demand .demandList p:last-child {
  971. float: left;
  972. font-size: 16px;
  973. padding: 10px 0;
  974. width: 100%;
  975. }
  976. .demand .demandList p:last-child span:first-child {
  977. display: inline-block;
  978. width: 50%;
  979. text-align: left;
  980. }
  981. .demand .demandList p:last-child span:last-child {
  982. display: inline-block;
  983. width: 50%;
  984. text-align: left;
  985. }
  986. // 找服务
  987. .service {
  988. float: left;
  989. height: 518px;
  990. width: 100%;
  991. }
  992. .service .serviceList {
  993. float: left;
  994. width: 29%;
  995. border: 1px solid #ccc;
  996. margin: 10px 24px;
  997. height: 181px;
  998. }
  999. /deep/.el-tabs--border-card > .el-tabs__content {
  1000. padding: 0;
  1001. }
  1002. .service .serviceList:hover {
  1003. box-shadow: 0 0 10px #ccc;
  1004. }
  1005. .service .serviceList .company {
  1006. font-size: 18px;
  1007. padding: 10px;
  1008. }
  1009. .service .serviceList .serviceDown {
  1010. float: left;
  1011. width: 100%;
  1012. }
  1013. .service .serviceList .serviceDown .el-image {
  1014. float: left;
  1015. width: 20%;
  1016. height: 80px;
  1017. margin: 10px;
  1018. }
  1019. .service .serviceList .serviceDown p {
  1020. float: left;
  1021. width: 65%;
  1022. padding: 1px 0 0 0;
  1023. }
  1024. .service .serviceList .serviceDown p button {
  1025. float: left;
  1026. width: 50%;
  1027. border: 1px solid #ddd;
  1028. height: 35px;
  1029. color: #39c;
  1030. margin: 0 0 0 15px;
  1031. background-color: #fff;
  1032. }
  1033. .service .serviceList .serviceDown p .type1 {
  1034. float: left;
  1035. width: 100%;
  1036. padding: 15px 0 3px 20px;
  1037. }
  1038. .service .serviceList .serviceDown p .type2 {
  1039. color: darkorange;
  1040. }
  1041. .service .serviceList .btn {
  1042. font-size: 16px;
  1043. float: left;
  1044. width: 100%;
  1045. padding: 9px 0;
  1046. text-align: center;
  1047. color: #fff;
  1048. background: orangered;
  1049. }
  1050. // 找专家
  1051. // .expert {
  1052. // }
  1053. .expert .expertList {
  1054. height: 117px;
  1055. float: left;
  1056. width: 48%;
  1057. border: 1px solid #ccc;
  1058. margin: 10px 14px 10px 13px;
  1059. padding: 5px 0 5px 0;
  1060. overflow: hidden;
  1061. }
  1062. .expert .expertList:hover {
  1063. box-shadow: 0 0 5px green;
  1064. }
  1065. .expert .expertList:nth-child(2n) {
  1066. margin: 10px 0 10px 0;
  1067. }
  1068. .expert .expertList .el-image {
  1069. float: left;
  1070. width: 100px;
  1071. height: 100px;
  1072. border-radius: 90px;
  1073. }
  1074. .expert .expertList div {
  1075. float: left;
  1076. width: 82%;
  1077. }
  1078. .expert .expertList div p:first-child {
  1079. float: left;
  1080. width: 100%;
  1081. padding: 5px 0 10px 0;
  1082. }
  1083. .expert .expertList div p:first-child span:first-child {
  1084. float: left;
  1085. width: 50%;
  1086. font-size: 16px;
  1087. color: #333;
  1088. font-weight: bold;
  1089. }
  1090. .expert .expertList div p:first-child span:last-child {
  1091. float: left;
  1092. width: 50%;
  1093. font-size: 16px;
  1094. }
  1095. .expert .expertList div p:nth-child(2) {
  1096. float: left;
  1097. width: 100%;
  1098. font-size: 16px;
  1099. color: #666;
  1100. padding: 0 0 5px 0;
  1101. }
  1102. .expert .expertList div p:last-child {
  1103. float: left;
  1104. width: 100%;
  1105. font-size: 16px;
  1106. color: #666;
  1107. padding: 5px 0 0 0;
  1108. }
  1109. .suspenInfo {
  1110. position: fixed;
  1111. background: #0279d5;
  1112. width: 100px;
  1113. height: 100px;
  1114. z-index: 999;
  1115. left: 13%;
  1116. top: 60%;
  1117. border-radius: 20px;
  1118. box-shadow: 2px 2px 2px #055c9f;
  1119. text-align: center;
  1120. line-height: 100px;
  1121. }
  1122. /deep/.suspenInfo .el-link {
  1123. font-size: 20px;
  1124. color: #fff;
  1125. font-weight: bold;
  1126. }
  1127. .suspenInfo:hover {
  1128. background: #f60;
  1129. }
  1130. .detail {
  1131. min-height: 398px;
  1132. line-height: 33px;
  1133. }
  1134. /deep/.el-dialog__body {
  1135. padding: 0 20px;
  1136. color: #606266;
  1137. font-size: 14px;
  1138. word-break: break-all;
  1139. }
  1140. .newsheight {
  1141. height: 604px;
  1142. overflow: hidden;
  1143. }
  1144. .newimage2 {
  1145. margin: 30px 0 30px 0;
  1146. }
  1147. .newimage2 span {
  1148. position: absolute;
  1149. top: 30px;
  1150. left: 650px;
  1151. color: #ffffff;
  1152. font-size: 36px;
  1153. // position: relative;
  1154. // top: 30px;
  1155. z-index: 999;
  1156. }
  1157. .headimage {
  1158. height: 100px;
  1159. width: 100px;
  1160. }
  1161. .annius {
  1162. text-align: center;
  1163. }
  1164. .newclassimage {
  1165. float: left;
  1166. }
  1167. .tupian {
  1168. float: left;
  1169. }
  1170. .infos {
  1171. overflow: hidden;
  1172. text-overflow: ellipsis;
  1173. display: -webkit-box;
  1174. -webkit-line-clamp: 3;
  1175. -webkit-box-orient: vertical;
  1176. }
  1177. </style>