index.vue 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017
  1. <template>
  2. <view>
  3. <view class="topArea">
  4. <image class="topArea-Bg" :src="$getImageUrl('static/images/applet/index/topBg.png')"></image>
  5. <view class="topArea-top" :style="{height:navBarTop + 'px',width:navBarWidth + 'px'}"></view>
  6. <view class="topArea-nav"
  7. :style="{width:navBarWidth + 'px',height:navBarHeight + 'px',lineHeight:navBarHeight + 'px'}">
  8. <view class="nav-title">晋江零工服务平台</view>
  9. <view class="nav-search" :style="{width:navSearchWidth + 'px', height:navBarHeight+'px'}"><u-search
  10. inputAlign="center" :height="navBarHeight-5" placeholder="搜索" :showAction="false"
  11. @search="goSearch"></u-search>
  12. </view>
  13. </view>
  14. <view class="topArea-main">
  15. <view class="main-title">
  16. <view>灵活用工已成</view>
  17. <view>企业用人新趋势</view>
  18. </view>
  19. <view class="main-banner">
  20. <image class="main-banner-image" :src="$getImageUrl('static/images/applet/index/topBanner.png')"
  21. mode="aspectFit">
  22. </image>
  23. </view>
  24. </view>
  25. </view>
  26. <view class="summary">
  27. <view class="topMenu">
  28. <view class="topMenu-item" @click="goLPage('/pages/comjobs/recruitFast')">
  29. <image class="item-icon" :src="$getImageUrl('static/images/applet/index/topMenuA.png')"></image>
  30. <view class="item-title">晋快招</view>
  31. </view>
  32. <view class="topMenu-item" @tap="develop()">
  33. <image class="item-icon" :src="$getImageUrl('static/images/applet/index/topMenuB.png')"></image>
  34. <view class="item-title">晋帮家</view>
  35. </view>
  36. <view class="topMenu-item" @tap="develop()">
  37. <image class="item-icon" :src="$getImageUrl('static/images/applet/index/topMenuC.png')"></image>
  38. <view class="item-title">晋全能</view>
  39. </view>
  40. <view class="topMenu-item" @tap="develop()">
  41. <image class="item-icon" :src="$getImageUrl('static/images/applet/index/topMenuD.png')"></image>
  42. <view class="item-title">晋企帮</view>
  43. </view>
  44. </view>
  45. <!-- <view class="topMenu-fill"></view> -->
  46. <view class="topApply">
  47. <view class="topApply-left">
  48. <image class="left-icon" :src="$getImageUrl('static/images/applet/index/topApplyIcon.png')"></image>
  49. </view>
  50. <view class="topApply-center">经纪人福利多多</view>
  51. <view class="topApply-right" @tap="pageUrl(1,'/pages/broker/brokerform')">立即申请</view>
  52. </view>
  53. <view class="hot">
  54. <view class="hot-left" @tap="develop()">
  55. <image class="hot-left-image" :src="$getImageUrl('static/images/applet/index/hotLeft.png')"
  56. mode="aspectFit"></image>
  57. </view>
  58. <view class="hot-right">
  59. <view class="hot-right-item" @click="goLPage('/pages/train/joinlist')">
  60. <view class="item-top">
  61. <view class="item-top-title">
  62. <view class="title-first">培训专场</view>
  63. <view class="title-second">职场提升小技巧</view>
  64. </view>
  65. <image class="item-top-hotRightOne"
  66. :src="$getImageUrl('static/images/applet/index/hotRighrOne.png')"></image>
  67. </view>
  68. <view class="item-bottom">我要报名</view>
  69. </view>
  70. <view class="hot-right-item" @tap="develop()">
  71. <image class="item-hotRightTwo"
  72. :src="$getImageUrl('static/images/applet/index/hotRightTwo.png')"></image>
  73. </view>
  74. </view>
  75. </view>
  76. <view class="tabs">
  77. <view :class="selectID == 0 ? 'tabs-item-select' : 'tabs-item'" @click="selectTab(0)">
  78. <image v-if="selectID != 0" class="item-icon"
  79. :src="$getImageUrl('static/images/applet/index/tabOneA.png')"></image>
  80. <image v-if="selectID == 0" class="item-icon"
  81. :src="$getImageUrl('static/images/applet/index/tabOneB.png')"></image>
  82. <text class="item-title">悬赏聘</text>
  83. </view>
  84. <view :class="selectID == 1 ? 'tabs-item-select' : 'tabs-item'" @click="selectTab(1)">
  85. <image v-if="selectID != 1" class="item-icon"
  86. :src="$getImageUrl('static/images/applet/index/tabTwoA.png')"></image>
  87. <image v-if="selectID == 1" class="item-icon"
  88. :src="$getImageUrl('static/images/applet/index/tabTwoB.png')"></image>
  89. <text class="item-title">超值秒杀</text>
  90. </view>
  91. <view :class="selectID == 2 ? 'tabs-item-select' : 'tabs-item'" @click="selectTab(2)">
  92. <image v-if="selectID != 2" class="item-icon"
  93. :src="$getImageUrl('static/images/applet/index/tabThreeA.png')"></image>
  94. <image v-if="selectID == 2" class="item-icon"
  95. :src="$getImageUrl('static/images/applet/index/tabThreeB.png')"></image>
  96. <text class="item-title">推荐服务</text>
  97. </view>
  98. <!-- <view :class="selectID == 3 ? 'tabs-item-select' : 'tabs-item'" @click="selectTab(3)">
  99. <image v-if="selectID != 3" class="item-icon" :src="$getImageUrl('static/images/applet/index/tabFourA.png')"></image>
  100. <image v-if="selectID == 3" class="item-icon" :src="$getImageUrl('static/images/applet/index/tabFourB.png')"></image>
  101. <text class="item-title">手工单</text>
  102. </view> -->
  103. </view>
  104. </view>
  105. <view class="listContent" v-if="selectID == 0">
  106. <view class="listContent-card" v-for="(item,index) in plist" :key="index" @tap="goDetail(item.id)">
  107. <view class="card-infor">
  108. <view class="card-infor-left">
  109. <view class="left-job card-center">
  110. <image class="card-icon" :src="$getImageUrl('static/images/applet/index/cardA.png')">
  111. </image><text class="job-title">岗位:{{item.title}}</text>
  112. </view>
  113. <view class="left-time card-center">
  114. <image class="card-icon" :src="$getImageUrl('static/images/applet/index/cardB.png')">
  115. </image><text>工作时间:8:00-18:00</text>
  116. </view>
  117. </view>
  118. <view class="card-infor-right">
  119. <view class="right-money card-center">
  120. <image class="card-icon" :src="$getImageUrl('static/images/applet/index/cardC.png')">
  121. </image><text>赏金</text><text class="right-money-num">300元</text>
  122. </view>
  123. <view class="right-place card-center">
  124. <image class="card-icon" :src="$getImageUrl('static/images/applet/index/cardD.png')">
  125. </image><text>地点:{{item.district}}</text>
  126. </view>
  127. </view>
  128. </view>
  129. <view class="card-botInfor">
  130. <view class="card-botInfor-company">{{item.worker.title}}</view>
  131. <view class="card-botInfor-more">...</view>
  132. </view>
  133. </view>
  134. <uni-load-more :status="pstatus"></uni-load-more>
  135. </view>
  136. <view class="developing" style="text-align: center;padding: 30rpx 0;color:#797979" v-if="selectID != 0">
  137. 正在开发中,敬请期待
  138. </view>
  139. <view class="padding-sm"></view>
  140. <view class="padding-xl"></view>
  141. <view class="cu-bar tabbar bg-white foot">
  142. <view class="action text-blue" @tap="goNavPage('/pages/index/index')">
  143. <view class="cuIcon-cu-image">
  144. <image src="../../static/tabbar/indexSelected.png"></image>
  145. </view>
  146. 首页
  147. </view>
  148. <view class="action text-gray" @tap="goNavPage('/pages/comjobs/comjobs')">
  149. <view class="cuIcon-cu-image">
  150. <image src="../../static/tabbar/jobs.png"></image>
  151. </view>
  152. 招聘
  153. </view>
  154. <!-- #ifndef MP-WEIXIN -->
  155. <view class="action text-gray videoimg" @tap="goNavPage('/pages/video/videolist')">
  156. <view class="cuIcon-cu-image">
  157. <image src="../../static/tabbar/video.png"></image>
  158. </view>
  159. 微工作
  160. </view>
  161. <!-- #endif -->
  162. <view class="action text-gray" @tap="goNavPage('/pages/broker/brokerlist')">
  163. <view class="cuIcon-cu-image">
  164. <image src="../../static/tabbar/broker.png"></image>
  165. </view>
  166. 经纪人
  167. </view>
  168. <view class="action text-gray" @tap="goNavPage('/pages/my/my')">
  169. <view class="cuIcon-cu-image">
  170. <image src="../../static/tabbar/my.png"></image>
  171. </view>
  172. 我的
  173. </view>
  174. </view>
  175. <wxContact ref="wxContact"></wxContact>
  176. </view>
  177. </template>
  178. <script>
  179. import uniLoadMore from "@/components/uni-load-more/uni-load-more.vue";
  180. import QQMapWX from '@/common/qqmap-wx-jssdk';
  181. var _this;
  182. export default {
  183. components: {
  184. uniLoadMore
  185. },
  186. data() {
  187. return {
  188. userinfo: null,
  189. workerinfo: null,
  190. param: [],
  191. slide: [],
  192. cardCur: 0,
  193. searchval: "",
  194. article: [],
  195. navigation: [],
  196. pstatus: 'more',
  197. pstatusn: 'more',
  198. ppage: 1,
  199. ppagen: 1,
  200. psize: 6,
  201. psizen: 20,
  202. plist: [],
  203. plistn: [],
  204. plistl: [],
  205. status: 0,
  206. latitude: 0.000000,
  207. longitude: 0.000000,
  208. useraddress: "",
  209. navBarTop: 0,
  210. navBarHeight: 0,
  211. navBarWidth: 0,
  212. navSearchWidth: 0,
  213. selectID: 0,
  214. };
  215. },
  216. onLoad: function(option) {
  217. _this = this;
  218. _this.status = option.status || 0;
  219. _this.userinfo = uni.getStorageSync('userinfo') || false;
  220. _this.workerinfo = uni.getStorageSync('workerinfo') || false;
  221. if (_this.workerinfo !== false) {
  222. uni.reLaunch({
  223. url: "/pages/worker/worker"
  224. });
  225. return false;
  226. }
  227. uni.getLocation({
  228. success: function(res) {
  229. console.log(res);
  230. console.log('纬度:' + res.latitude);
  231. console.log('经度:' + res.longitude);
  232. _this.latitude = res.latitude;
  233. _this.longitude = res.longitude;
  234. // _this.qqmapsdk.reverseGeocoder({
  235. // location: {
  236. // latitude: res.latitude,
  237. // longitude: res.longitude
  238. // },
  239. // success: function (res) {
  240. // console.log(res.result.address_component);
  241. // //addressinfo=res.result.address_component;
  242. // _this.useraddress = res.result.address_component.province + " " + res.result.address_component.city + " " + res.result.address_component.district;
  243. // },
  244. // fail: function (res) {
  245. // console.log(res)
  246. // },
  247. // complete: function (res) {
  248. // // console.log(res)
  249. // }
  250. // })
  251. }
  252. });
  253. _this.$req.ajax({
  254. path: "index/getindexdata",
  255. }).then((data) => {
  256. _this.param = data.param;
  257. _this.slide = data.slide;
  258. _this.navigation = data.navigation;
  259. _this.article = data.article;
  260. _this.getMore();
  261. }).catch((err) => {
  262. uni.showModal({
  263. title: '信息提示',
  264. content: err,
  265. showCancel: false
  266. });
  267. });
  268. _this.qqmapsdk = new QQMapWX({
  269. // 在腾讯平台自己申请的秘钥
  270. key: 'L2PBZ-J53WR-FUXW6-WB3SD-NWCFO-WYBS6'
  271. });
  272. // let statuBar = uni.getSystemInfoSync()
  273. let menuButtonInfo = uni.getMenuButtonBoundingClientRect();
  274. _this.navBarWidth = menuButtonInfo.left;
  275. _this.navBarTop = menuButtonInfo.top;
  276. _this.navBarHeight = menuButtonInfo.height;
  277. _this.navSearchWidth = menuButtonInfo.width;
  278. console.log("除去胶囊的屏幕宽度", _this.navBarWidth, menuButtonInfo)
  279. },
  280. onShareAppMessage: function(res) {
  281. return {
  282. title: "晋江人力",
  283. path: "/pages/index/index"
  284. }
  285. },
  286. // onPullDownRefresh: function() {
  287. // if (_this.status == 0) {
  288. // _this.ppage = 1;
  289. // _this.plist = [];
  290. // _this.pstatus = 'more';
  291. // } else if (_this.status == 1) {
  292. // _this.ppagen = 1;
  293. // _this.plistn = [];
  294. // _this.pstatusn = 'more';
  295. // } else if (_this.status == 2) {
  296. // _this.ppagen = 1;
  297. // _this.plistn = [];
  298. // _this.plistl = 'more';
  299. // }
  300. // _this.getMore();
  301. // },
  302. onReachBottom: function() {
  303. if (_this.status == 0) {
  304. if (_this.pstatus !== 'more') {
  305. return;
  306. }
  307. } else {
  308. if (_this.pstatusn !== 'more') {
  309. return;
  310. }
  311. }
  312. _this.getMore();
  313. },
  314. methods: {
  315. selectTab(id) {
  316. _this.selectID = id;
  317. },
  318. goSearch(e) {
  319. _this.searchval = e;
  320. console.log("搜索", e, _this.searchval)
  321. if (_this.searchval == "") {
  322. uni.showModal({
  323. title: '信息提示',
  324. content: "请输入要搜索的关键字...",
  325. showCancel: false
  326. });
  327. return false;
  328. }
  329. uni.navigateTo({
  330. url: '/pages/comjobs/comjobs?searchval=' + _this.searchval
  331. });
  332. },
  333. goLPage: function(pageurl) {
  334. _this.userinfo = _this.checkLogin("/pages/index/index");
  335. if (_this.userinfo === false) {
  336. return false;
  337. }
  338. uni.navigateTo({
  339. url: pageurl,
  340. fail: function() {
  341. uni.switchTab({
  342. url: pageurl
  343. });
  344. }
  345. });
  346. },
  347. showConcatModel: function() {
  348. this.$refs.wxContact.showConcatModel();
  349. },
  350. goHome: function() {
  351. uni.setStorageSync('identityinfo', false);
  352. uni.setStorageSync('workerinfo', null);
  353. uni.reLaunch({
  354. url: "/pages/index/home"
  355. });
  356. },
  357. tabSelect: function(e) {
  358. _this.status = e.currentTarget.dataset.status;
  359. _this.pageRefresh();
  360. },
  361. // 搜索
  362. bindInput: function(e) {
  363. _this.searchval = e.detail.value;
  364. },
  365. btnSearch: function() {
  366. if (_this.searchval == "") {
  367. uni.showModal({
  368. title: '信息提示',
  369. content: "请输入要搜索的关键字...",
  370. showCancel: false
  371. });
  372. return false;
  373. }
  374. uni.navigateTo({
  375. url: '/pages/comjobs/comjobs?searchval=' + _this.searchval
  376. });
  377. },
  378. pageRefresh: function() {
  379. if (_this.status == 0) {
  380. _this.pstatus = 'more';
  381. _this.ppage = 1;
  382. _this.plist = [];
  383. } else if (_this.status == 1) {
  384. _this.pstatusn = 'more';
  385. _this.ppagen = 1;
  386. _this.plistn = [];
  387. } else if (_this.status == 2) {
  388. _this.pstatusn = 'more';
  389. _this.ppagen = 1;
  390. _this.plistl = [];
  391. }
  392. _this.getMore();
  393. },
  394. getMore: function() {
  395. // 热门职位
  396. if (_this.status == 0) {
  397. _this.$req.ajax({
  398. path: "comjobs/listcomjobs",
  399. data: {
  400. ppage: _this.ppage,
  401. psize: _this.psize,
  402. rectype: 2
  403. }
  404. }).then((data) => {
  405. _this.pstatus = data.pstatus;
  406. _this.plist = _this.plist.concat(data.plist);
  407. _this.ppage += 1;
  408. console.log("列表数据", _this.plist)
  409. uni.stopPullDownRefresh();
  410. }).catch((err) => {
  411. uni.showModal({
  412. title: '信息提示',
  413. content: err,
  414. showCancel: false
  415. });
  416. });
  417. } else if (_this.status == 1) {
  418. // 附近职位
  419. _this.$req.ajax({
  420. path: "index/listComjobsofnear",
  421. data: {
  422. ppage: _this.ppagen,
  423. psize: _this.psizen,
  424. lat: _this.latitude,
  425. lng: _this.longitude
  426. }
  427. }).then((data) => {
  428. _this.pstatusn = data.pstatus;
  429. _this.plistn = _this.plistn.concat(data.plist);
  430. _this.ppagen += 1;
  431. uni.stopPullDownRefresh();
  432. }).catch((err) => {
  433. uni.showModal({
  434. title: '信息提示',
  435. content: err,
  436. showCancel: false
  437. });
  438. });
  439. } else if (_this.status == 2) {
  440. // 猜你喜欢
  441. _this.$req.ajax({
  442. path: "index/listComjobsLike",
  443. data: {
  444. ppage: _this.ppagen,
  445. psize: _this.psizen,
  446. userid: _this.userinfo.id,
  447. }
  448. }).then((data) => {
  449. _this.pstatusn = data.pstatus;
  450. _this.plistl = _this.plistl.concat(data.plist);
  451. _this.ppagen += 1;
  452. uni.stopPullDownRefresh();
  453. }).catch((err) => {
  454. uni.showModal({
  455. title: '信息提示',
  456. content: err,
  457. showCancel: false
  458. });
  459. });
  460. }
  461. },
  462. goDetail: function(comjobsid) {
  463. uni.navigateTo({
  464. url: '/pages/comjobs/detail?comjobsid=' + comjobsid
  465. });
  466. },
  467. goShop: function(workerid) {
  468. uni.navigateTo({
  469. url: '/pages/worker/shop?workerid=' + workerid
  470. });
  471. },
  472. onClick: function(index) {
  473. var nav = that.navigation[index.index];
  474. if (nav.type == 1) {
  475. uni.navigateTo({
  476. url: nav.link
  477. });
  478. } else {
  479. // #ifdef H5
  480. location.href = nav.link;
  481. // #endif
  482. // #ifndef H5
  483. uni.navigateTo({
  484. url: '/pages/tool/webview?pagesrc=' + encodeURIComponent(nav.link)
  485. });
  486. // #endif
  487. }
  488. },
  489. develop() {
  490. uni.showModal({
  491. title: '信息提示',
  492. content: '正在开发中,敬请期待',
  493. showCancel: false
  494. });
  495. },
  496. goNavPage: function(pageurl) {
  497. uni.redirectTo({
  498. url: pageurl
  499. });
  500. },
  501. // 轮播图
  502. cardSwiper: function(e) {
  503. _this.cardCur = e.detail.current
  504. },
  505. pageUrl: function(type, tilurl) {
  506. if (type == 1) {
  507. uni.navigateTo({
  508. url: tilurl,
  509. fail: function() {
  510. uni.switchTab({
  511. url: tilurl
  512. });
  513. }
  514. });
  515. } else {
  516. uni.navigateTo({
  517. url: '/pages/tool/webview?pagesrc=' + encodeURIComponent(tilurl)
  518. });
  519. }
  520. },
  521. }
  522. };
  523. </script>
  524. <style lang="scss">
  525. .selectok {
  526. border-bottom: #007AFF solid 2px;
  527. }
  528. .echo-top {
  529. position: relative;
  530. }
  531. .echo-topbg {
  532. width: 750rpx;
  533. position: absolute;
  534. top: 0rpx;
  535. z-index: 0;
  536. }
  537. .cu-list.grid {
  538. background-color: transparent !important;
  539. }
  540. .card-swiper {
  541. height: 300rpx !important;
  542. }
  543. /* 通知 */
  544. .noticbox {
  545. display: flex;
  546. align-items: center;
  547. image {
  548. display: block;
  549. margin: 0rpx;
  550. padding: 0rpx;
  551. width: 150rpx;
  552. height: 35rpx;
  553. }
  554. .uni-swiper-msg-icon {
  555. width: 150rpx;
  556. }
  557. swiper-item {
  558. line-height: 80rpx !important;
  559. }
  560. swiper {
  561. height: 80rpx;
  562. }
  563. navigator {
  564. display: block;
  565. line-height: 80rpx;
  566. height: 80rpx;
  567. font-size: 32rpx;
  568. }
  569. }
  570. /* 热门岗位 */
  571. .echo-page-title {
  572. width: 660rpx;
  573. border-radius: 8rpx 8rpx 0rpx 0rpx;
  574. }
  575. .echo-comjobs-list-item {
  576. padding: 30rpx 15rpx;
  577. margin: 0rpx 17rpx 20rpx 17rpx;
  578. border-radius: 8rpx;
  579. }
  580. .echo-comjobs-list-item:first-child {
  581. border-radius: 0rpx 0rpx 8rpx 8rpx;
  582. }
  583. .join-group {
  584. display: flex;
  585. margin-top: 20px;
  586. box-sizing: border-box;
  587. width: 100%;
  588. padding: 0 60rpx;
  589. }
  590. .join-group .join-right {
  591. margin-left: 40rpx;
  592. width: 450rpx;
  593. }
  594. .join-group .arrow {
  595. position: relative;
  596. }
  597. .join-group .arrow:before {
  598. position: absolute;
  599. top: 0;
  600. right: -20rpx;
  601. bottom: 0;
  602. display: block;
  603. margin: auto;
  604. width: 30rpx;
  605. height: 30rpx;
  606. color: var(--grey);
  607. content: "\e6a3";
  608. text-align: center;
  609. font-size: 34rpx;
  610. font-family: "cuIcon";
  611. line-height: 30rpx;
  612. margin-top: auto;
  613. margin-right: auto;
  614. margin-bottom: auto;
  615. margin-left: auto;
  616. }
  617. .lw-nav-broker {
  618. width: 710rpx;
  619. padding: 20rpx 0 10rpx 0;
  620. margin: 0 auto;
  621. display: flex;
  622. justify-content: space-around;
  623. }
  624. .lw-nav-broker .img {
  625. width: 710rpx;
  626. height: 160rpx;
  627. }
  628. .lw-nav {
  629. width: 710rpx;
  630. padding: 10rpx 0 20rpx 0;
  631. margin: 0 auto;
  632. display: flex;
  633. justify-content: space-around;
  634. }
  635. .lw-nav .img {
  636. width: 160rpx;
  637. height: 160rpx;
  638. }
  639. .topArea {
  640. width: 750rpx;
  641. height: 400rpx;
  642. position: relative;
  643. .topArea-Bg {
  644. position: absolute;
  645. width: 100%;
  646. height: 400rpx;
  647. z-index: -100;
  648. }
  649. .topArea-nav {
  650. padding: 0 20rpx;
  651. display: flex;
  652. justify-content: space-between;
  653. .nav-title {
  654. font-size: 32rpx;
  655. font-family: PingFang SC, PingFang SC;
  656. font-weight: 500;
  657. color: #FFFFFF;
  658. }
  659. .nav-search {}
  660. }
  661. .topArea-main {
  662. width: 100%;
  663. margin-top: 30rpx;
  664. padding: 0 20rpx;
  665. display: flex;
  666. align-items: center;
  667. .main-title {
  668. flex: 1;
  669. display: flex;
  670. flex-direction: column;
  671. justify-content: center;
  672. text-align: center;
  673. color: #FFFFFF;
  674. font-size: 34rpx;
  675. line-height: 50rpx;
  676. }
  677. .main-banner {
  678. flex: 1;
  679. .main-banner-image {
  680. width: 272rpx;
  681. height: 214rpx;
  682. }
  683. }
  684. }
  685. }
  686. .summary {
  687. width: 100%;
  688. margin-top: 60rpx;
  689. background-color: #FFFFFF;
  690. }
  691. .topMenu {
  692. position: relative;
  693. top: -110rpx;
  694. margin: 0 20rpx;
  695. padding: 50rpx 0;
  696. background: #FFFFFF;
  697. box-shadow: 0rpx 6rpx 12rpx 2rpx rgba(0, 0, 0, 0.16);
  698. border-radius: 26rpx 26rpx 26rpx 26rpx;
  699. opacity: 1;
  700. display: flex;
  701. align-items: center;
  702. justify-content: space-between;
  703. .topMenu-item {
  704. flex: 1;
  705. width: 100%;
  706. display: flex;
  707. flex-direction: column;
  708. align-items: center;
  709. color: #707070;
  710. font-size: 32rpx;
  711. font-weight: 400;
  712. .item-icon {
  713. width: 60rpx;
  714. height: 60rpx;
  715. margin-bottom: 15rpx;
  716. }
  717. }
  718. }
  719. .topApply {
  720. margin: -70rpx 20rpx 0;
  721. padding: 20rpx 30rpx;
  722. // height: 141rpx;
  723. background: linear-gradient(270deg, #484353 0%, #6F6F6F 100%);
  724. border-radius: 78rpx;
  725. display: flex;
  726. align-items: center;
  727. justify-content: space-between;
  728. .topApply-left {
  729. width: 98rpx;
  730. height: 98rpx;
  731. border-radius: 50%;
  732. box-shadow: 0rpx 4rpx 8rpx 2rpx rgba(0, 0, 0, 0.3);
  733. opacity: 1;
  734. .left-icon {
  735. width: 98rpx;
  736. height: 98rpx;
  737. border-radius: 50%;
  738. }
  739. }
  740. .topApply-center {
  741. height: 82rpx;
  742. padding: 0 30rpx;
  743. border-left: 2rpx solid rgba(255, 232, 171, 0.16);
  744. font-size: 32rpx;
  745. line-height: 82rpx;
  746. color: #E0E0E0;
  747. }
  748. .topApply-right {
  749. width: 186rpx;
  750. height: 72rpx;
  751. line-height: 72rpx;
  752. text-align: center;
  753. background: linear-gradient(180deg, #FAE7B5 0%, #F3CA7E 100%);
  754. border-radius: 56rpx 56rpx 56rpx 56rpx;
  755. opacity: 1;
  756. font-size: 24rpx;
  757. color: #3F3852;
  758. }
  759. }
  760. .hot {
  761. margin: 40rpx 20rpx 0;
  762. height: 434rpx;
  763. display: flex;
  764. justify-content: space-between;
  765. .hot-left {
  766. width: 49%;
  767. height: 434rpx;
  768. .hot-left-image {
  769. height: 434rpx;
  770. }
  771. }
  772. .hot-right {
  773. width: 49%;
  774. height: 434rpx;
  775. display: flex;
  776. flex-direction: column;
  777. justify-content: space-between;
  778. .hot-right-item {
  779. width: 100%;
  780. height: 208rpx;
  781. background-color: #F0FEFF;
  782. border-radius: 24rpx;
  783. display: flex;
  784. flex-direction: column;
  785. align-items: center;
  786. .item-top {
  787. width: 100%;
  788. margin-top: 30rpx;
  789. padding: 0 30rpx;
  790. display: flex;
  791. justify-content: space-between;
  792. .item-top-title {
  793. color: #017AFE;
  794. .title-first {
  795. font-size: 32rpx;
  796. }
  797. .title-second {
  798. font-size: 20rpx;
  799. border-bottom: 4rpx solid #017AFE;
  800. }
  801. }
  802. .item-top-hotRightOne {
  803. width: 120rpx;
  804. height: 106rpx;
  805. }
  806. }
  807. .item-bottom {
  808. margin-top: 10rpx;
  809. width: 190rpx;
  810. height: 50rpx;
  811. border-radius: 25rpx;
  812. background-color: #B4F6FF;
  813. line-height: 50rpx;
  814. text-align: center;
  815. font-size: 28rpx;
  816. color: #017AFE;
  817. }
  818. .item-hotRightTwo {
  819. width: 100%;
  820. height: 208rpx;
  821. }
  822. }
  823. }
  824. }
  825. .tabs {
  826. padding-top: 20rpx;
  827. display: flex;
  828. align-items: center;
  829. justify-content: space-between;
  830. .tabs-item-select {
  831. flex: 1;
  832. height: 76rpx;
  833. display: flex;
  834. align-items: center;
  835. justify-content: center;
  836. font-size: 28rpx;
  837. color: #CA151C;
  838. border-bottom: 4rpx solid #CA151C;
  839. }
  840. .tabs-item {
  841. flex: 1;
  842. height: 76rpx;
  843. display: flex;
  844. align-items: center;
  845. justify-content: center;
  846. font-size: 28rpx;
  847. color: #717171;
  848. border-bottom: 4rpx solid transparent;
  849. }
  850. .item-icon {
  851. width: 27rpx;
  852. height: 27rpx;
  853. }
  854. .item-title {
  855. margin-left: 15rpx;
  856. }
  857. }
  858. .listContent {
  859. width: 100%;
  860. padding: 20rpx 26rpx;
  861. .listContent-card {
  862. margin-bottom: 24rpx;
  863. width: 100%;
  864. height: 268rpx;
  865. background-color: #FFFFFF;
  866. border-radius: 12rpx;
  867. .card-infor {
  868. height: 182rpx;
  869. padding: 0 20rpx;
  870. border-bottom: 2rpx solid #E2E2E2;
  871. display: flex;
  872. align-items: center;
  873. justify-content: space-between;
  874. font-size: 28rpx;
  875. color: #747474;
  876. .card-icon {
  877. margin-right: 10rpx;
  878. width: 35rpx;
  879. height: 35rpx;
  880. }
  881. .card-center {
  882. height: 56rpx;
  883. display: flex;
  884. align-items: center;
  885. }
  886. .card-infor-left {
  887. width: 60%;
  888. .left-job {
  889. margin-bottom: 30rpx;
  890. color: #383838;
  891. font-weight: 600;
  892. .job-title {
  893. width: 340rpx;
  894. overflow: hidden;
  895. text-overflow: ellipsis;
  896. -webkit-line-clamp: 1;
  897. display: -webkit-box;
  898. -webkit-box-orient: vertical;
  899. }
  900. }
  901. }
  902. .card-infor-right {
  903. width: 40%;
  904. .right-money {
  905. margin-bottom: 30rpx;
  906. .right-money-num {
  907. margin-left: 10rpx;
  908. font-size: 40rpx;
  909. color: #FF0000;
  910. font-weight: 600;
  911. }
  912. }
  913. }
  914. }
  915. .card-botInfor {
  916. height: 86rpx;
  917. padding: 0 20rpx;
  918. display: flex;
  919. align-items: center;
  920. justify-content: space-between;
  921. }
  922. }
  923. }
  924. </style>