index.vue 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476
  1. <template>
  2. <div id="index">
  3. <el-row>
  4. <el-col :span="24" class="main">
  5. <div class="w_1200">
  6. <el-col :span="24" class="one">
  7. <el-col :span="24" class="top">
  8. <p>人才招聘展会模板</p>
  9. <p>主办方:吉林省计算中心</p>
  10. </el-col>
  11. <el-col :span="24" class="down">
  12. <p v-for="(item, index) in numList" :key="index">
  13. <span>{{ item.name }}</span>
  14. <span>{{ item.num }}人</span>
  15. </p>
  16. </el-col>
  17. </el-col>
  18. <el-col :span="24" class="two">
  19. <el-col :span="12" class="left">
  20. <el-col :span="24" class="top">
  21. <span style="color:#409eff">人才视频</span>
  22. <span>直播</span>
  23. </el-col>
  24. <el-col :span="24" class="down">
  25. 视频播放框
  26. </el-col>
  27. </el-col>
  28. <el-col :span="12" class="right">
  29. <el-col :span="24" class="top">
  30. 公共聊天
  31. </el-col>
  32. <el-col :span="24" class="down">
  33. <el-col :span="24" class="list">
  34. <el-col :span="24" class="chatList" v-for="(item, index) in chatList" :key="index">
  35. <el-col :span="2" class="image">
  36. <el-image :src="touxiang" style="width:30px;height:30px"></el-image>
  37. </el-col>
  38. <el-col :span="22" class="other">
  39. <el-col :span="24" class="otherone">
  40. <span>{{ item.name }}</span>
  41. <span>{{ item.date }}</span>
  42. </el-col>
  43. <el-col :span="24" class="othertwo">
  44. <p class="remark">{{ item.content }}</p>
  45. </el-col>
  46. </el-col>
  47. </el-col>
  48. </el-col>
  49. <el-col :span="24" class="chat">
  50. <el-col :span="21" class="input">
  51. <el-input v-model="text" placeholder="请输入聊天内容"></el-input>
  52. </el-col>
  53. <el-col :span="3" class="btn">
  54. <el-button type="primary" size="mini">发送</el-button>
  55. </el-col>
  56. </el-col>
  57. </el-col>
  58. </el-col>
  59. </el-col>
  60. <el-col :span="24" class="three">
  61. <el-image :src="per"></el-image>
  62. </el-col>
  63. <el-col :span="24" class="four">
  64. <el-tabs type="border-card">
  65. <el-tab-pane label="招聘信息">
  66. <el-col :span="24" class="fourone">
  67. <el-col :span="24" class="zpxxList" v-for="(item, index) in zpxxList" :key="index">
  68. <el-col :span="16" class="name textOver">
  69. {{ item.name }}
  70. </el-col>
  71. <el-col :span="4" class="type textOver"> 类型:{{ item.type }} </el-col>
  72. <el-col :span="4" class="date textOver">
  73. {{ item.date }}
  74. </el-col>
  75. <el-col :span="24" class="content">
  76. {{ item.content }}
  77. </el-col>
  78. </el-col>
  79. </el-col>
  80. </el-tab-pane>
  81. <el-tab-pane label="正式岗位">
  82. <el-col :span="24" class="fourtwo">
  83. <el-col :span="12" class="zsgwList" v-for="(item, index) in zsgwList" :key="index">
  84. <el-col :span="20" class="name textOver">
  85. {{ item.name }}
  86. </el-col>
  87. <el-col :span="4" class="date textOver">
  88. {{ item.date }}
  89. </el-col>
  90. <el-col :span="24" class="other">
  91. <span class="textOver">需求人数:{{ item.num }}</span>
  92. <span class="textOver" style="color:#ff0000;">薪资:{{ item.xz }}</span>
  93. </el-col>
  94. <el-col :span="24" class="other">
  95. <span class="textOver">福利待遇:{{ item.fldy }}</span>
  96. <span class="textOver">职位诱惑:{{ item.zwyh }}</span>
  97. </el-col>
  98. </el-col>
  99. </el-col>
  100. </el-tab-pane>
  101. <el-tab-pane label="实习岗位">
  102. <el-col :span="24" class="fourthree">
  103. <el-col :span="6" class="sxList" v-for="(item, index) in sxList" :key="index">
  104. <el-image :src="sx" class="image"></el-image>
  105. <el-col :span="24" class="name textOver">
  106. {{ item.name }}
  107. </el-col>
  108. <el-col :span="24" class="other">
  109. <span class="textOver"><i class="el-icon-coin"></i>{{ item.xz }}</span>
  110. <span class="textOver"><i class="el-icon-location"></i>{{ item.address }}</span>
  111. </el-col>
  112. <el-col :span="24" class="fldy textOver">
  113. <span>福利待遇:{{ item.fldy }}</span>
  114. </el-col>
  115. </el-col>
  116. </el-col>
  117. </el-tab-pane>
  118. </el-tabs>
  119. </el-col>
  120. </div>
  121. <div class="pz_down">
  122. <foot></foot>
  123. </div>
  124. </el-col>
  125. </el-row>
  126. </div>
  127. </template>
  128. <script>
  129. import foot from '@common/src/components/common/foot.vue';
  130. import { zpxx } from './js/zpxxList.js';
  131. import { zsgw } from './js/zsgwList.js';
  132. import { sx } from './js/sxList.js';
  133. import { mapState, createNamespacedHelpers } from 'vuex';
  134. export default {
  135. name: 'index',
  136. props: {},
  137. components: {
  138. foot,
  139. },
  140. data: function() {
  141. return {
  142. numList: [
  143. { name: '同时在线', num: 1000 },
  144. { name: '特邀嘉宾', num: 1000 },
  145. { name: '洽谈合作', num: 1000 },
  146. { name: '达成意向', num: 1000 },
  147. { name: '对接成功', num: 1000 },
  148. { name: '参展职位', num: 1000 },
  149. ],
  150. // 聊天列表
  151. chatList: [
  152. { name: '顾红伟', date: '10:00', content: '信息内容' },
  153. { name: '顾红伟', date: '10:00', content: '信息内容' },
  154. ],
  155. touxiang: require('@common/src/assets/emotion/touxiang.png'),
  156. // 发言内容
  157. text: '',
  158. per: require('@common/src/assets/personalLive.jpg'),
  159. // 招聘信息
  160. zpxxList: zpxx,
  161. // 正式岗位
  162. zsgwList: zsgw,
  163. // 实习岗位
  164. sx: require('@common/src/assets/sx.png'),
  165. sxList: sx,
  166. };
  167. },
  168. created() {},
  169. methods: {},
  170. computed: {
  171. ...mapState(['user']),
  172. },
  173. metaInfo() {
  174. return { title: this.$route.meta.title };
  175. },
  176. };
  177. </script>
  178. <style lang="less" scoped>
  179. .main {
  180. background: url('~@common/src/assets/bg1.jpg');
  181. background-repeat: no-repeat;
  182. background-size: 100%;
  183. .one {
  184. .top {
  185. margin: 50px 0;
  186. text-align: center;
  187. p:nth-child(1) {
  188. font-size: 70px;
  189. font-family: cursive;
  190. transform: scale(0.8);
  191. font-weight: bolder;
  192. -webkit-text-stroke: 1px #fff;
  193. -webkit-text-fill-color: #191970;
  194. letter-spacing: 3px;
  195. }
  196. p:nth-child(2) {
  197. font-size: 30px;
  198. padding: 20px 0;
  199. font-family: cursive;
  200. color: #fff;
  201. }
  202. }
  203. .down {
  204. margin: 0 0 15px 0;
  205. p {
  206. float: left;
  207. width: 16%;
  208. background: #ffffff5f;
  209. color: #000;
  210. height: 50px;
  211. line-height: 50px;
  212. border-radius: 30px;
  213. margin: 0 7px 0 0;
  214. span:first-child {
  215. display: inline-block;
  216. width: 56%;
  217. text-align: center;
  218. height: 50px;
  219. line-height: 50px;
  220. font-size: 16px;
  221. background: #76bdfe;
  222. border-radius: 30px;
  223. color: #fff;
  224. font-weight: 700;
  225. }
  226. span:last-child {
  227. display: inline-block;
  228. width: 42%;
  229. text-align: center;
  230. font-size: 15px;
  231. font-weight: 700;
  232. }
  233. }
  234. }
  235. }
  236. .two {
  237. height: 450px;
  238. margin: 0 0 15px 0;
  239. .left {
  240. height: 450px;
  241. overflow: hidden;
  242. border: 5px solid #000;
  243. background: #fff;
  244. border-radius: 5px;
  245. padding: 10px;
  246. margin: 0 15px 0 0;
  247. .top {
  248. height: 30px;
  249. line-height: 30px;
  250. font-weight: bold;
  251. font-size: 20px;
  252. margin: 0 0 5px 0;
  253. }
  254. .down {
  255. height: 385px;
  256. background-color: #000;
  257. color: #fff;
  258. }
  259. }
  260. .right {
  261. width: 48%;
  262. height: 450px;
  263. overflow: hidden;
  264. background: #f0ffff5f;
  265. box-shadow: 0 0 5px #409eff;
  266. border-radius: 5px;
  267. .top {
  268. height: 40px;
  269. line-height: 40px;
  270. padding: 0 10px;
  271. font-weight: bold;
  272. font-size: 18px;
  273. color: #fff;
  274. background-color: #409eff;
  275. }
  276. .down {
  277. height: 410px;
  278. overflow: hidden;
  279. padding: 0 0 0 10px;
  280. .list {
  281. height: 370px;
  282. overflow-y: auto;
  283. .chatList {
  284. padding: 10px 0;
  285. border-bottom: 1px dashed #409eff;
  286. .image {
  287. text-align: center;
  288. }
  289. .other {
  290. .otherone {
  291. span:nth-child(1) {
  292. color: #000;
  293. font-size: 16px;
  294. font-weight: bold;
  295. }
  296. span:nth-child(2) {
  297. display: inline-block;
  298. margin: 0 0 0 15px;
  299. color: #ccc;
  300. }
  301. }
  302. .othertwo {
  303. margin: 5px 0 0 0;
  304. color: #000;
  305. .remark {
  306. min-height: 20px;
  307. font-size: 15px;
  308. padding: 5px;
  309. border-radius: 5px;
  310. background: #cccccc5f;
  311. }
  312. }
  313. }
  314. }
  315. }
  316. .chat {
  317. height: 40px;
  318. .input {
  319. /deep/.el-input__inner {
  320. height: 35px;
  321. line-height: 35px;
  322. }
  323. }
  324. .btn {
  325. /deep/.el-button--mini,
  326. .el-button--mini.is-round {
  327. padding: 10px 15px;
  328. width: 100%;
  329. }
  330. }
  331. }
  332. }
  333. }
  334. }
  335. .three {
  336. height: 120px;
  337. margin: 10px 0 15px 0;
  338. .el-image {
  339. width: 100%;
  340. height: 120px;
  341. border: 1px solid #f1f1f1;
  342. box-shadow: 0 0 10px #f1f1f1;
  343. }
  344. }
  345. .four {
  346. height: 494px;
  347. overflow: hidden;
  348. .el-tabs {
  349. height: 480px;
  350. overflow: hidden;
  351. }
  352. .el-tabs--border-card {
  353. background-color: #ffffff9f;
  354. }
  355. .fourone {
  356. height: 430px;
  357. overflow: hidden;
  358. .zpxxList {
  359. border-bottom: 1px dashed #ccc;
  360. margin: 0 0 10px 0;
  361. height: 100px;
  362. .name {
  363. font-size: 18px;
  364. font-weight: bold;
  365. padding: 0 0 5px 0;
  366. }
  367. .type {
  368. font-size: 16px;
  369. padding: 0 0 5px 0;
  370. text-align: left;
  371. }
  372. .date {
  373. font-size: 16px;
  374. padding: 0 0 5px 0;
  375. text-align: right;
  376. }
  377. .content {
  378. font-size: 16px;
  379. overflow: hidden;
  380. text-overflow: ellipsis;
  381. -webkit-line-clamp: 2;
  382. word-break: break-all;
  383. display: -webkit-box;
  384. -webkit-box-orient: vertical;
  385. margin: 10px 0 0 0;
  386. }
  387. }
  388. .zpxxList:hover {
  389. cursor: pointer;
  390. .name {
  391. color: #409eff;
  392. }
  393. }
  394. }
  395. .fourtwo {
  396. height: 430px;
  397. overflow: hidden;
  398. .zsgwList {
  399. border: 1px solid #ccc;
  400. padding: 10px;
  401. margin: 0 0 5px 0;
  402. height: 100px;
  403. .name {
  404. font-size: 18px;
  405. font-weight: bold;
  406. }
  407. .date {
  408. text-align: right;
  409. font-size: 16px;
  410. }
  411. .other {
  412. padding: 2px 0 1px 0;
  413. font-size: 16px;
  414. span {
  415. display: inline-block;
  416. width: 50%;
  417. }
  418. }
  419. }
  420. .zsgwList:hover {
  421. cursor: pointer;
  422. .name {
  423. color: #409eff;
  424. }
  425. }
  426. }
  427. .fourthree {
  428. .sxList {
  429. padding: 15px;
  430. margin: 0 15px 10px 0;
  431. height: 205px;
  432. width: 24%;
  433. border-radius: 10px;
  434. box-shadow: 0 0px 5px #3333334f;
  435. .image {
  436. height: 100px;
  437. padding: 0 60px;
  438. }
  439. .name {
  440. font-size: 18px;
  441. text-align: center;
  442. font-weight: bold;
  443. padding: 5px 0 0 0;
  444. }
  445. .other {
  446. font-size: 16px;
  447. text-align: center;
  448. padding: 5px 0;
  449. span {
  450. display: inline-block;
  451. margin: 0 10px;
  452. }
  453. span:nth-child(1) {
  454. color: #ff0000;
  455. }
  456. }
  457. .fldy {
  458. font-size: 16px;
  459. text-align: center;
  460. }
  461. }
  462. .sxList:nth-child(4n) {
  463. margin: 0 0 10px 0;
  464. }
  465. .sxList:hover {
  466. cursor: pointer;
  467. .name {
  468. color: #409eff;
  469. }
  470. }
  471. }
  472. }
  473. }
  474. </style>