pay.vue 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992
  1. <template>
  2. <view>
  3. <!-- 固定顶部导航栏 -->
  4. <view class="fixed-header">
  5. <!-- 自定义导航栏 -->
  6. <view class="custom-navbar">
  7. <view class="navbar-content">
  8. <view class="nav-left" @click="goBack">
  9. <u-icon name="arrow-leftward" color="#333" size="32"></u-icon>
  10. </view>
  11. <view class="nav-title">职位详情</view>
  12. <view class="nav-right"></view>
  13. </view>
  14. </view>
  15. </view>
  16. <!-- 审核失败 -->
  17. <view v-if="info.status === 3">
  18. <!-- 审核状态提示 -->
  19. <view class="status-section">
  20. <view class="status-icon">
  21. <image src="../../static/images/index/redGantan.svg" class="status-icon-img"></image>
  22. </view>
  23. <view class="status-title">职位审核失败</view>
  24. </view>
  25. <!-- 职位信息卡片 -->
  26. <view class="job-info-card">
  27. <view class="job-header">
  28. <view class="job-title-section">
  29. <text class="job-title">{{ info.stationName }}</text>
  30. </view>
  31. <view class="job-status">
  32. <text class="status-text">审核未通过</text>
  33. </view>
  34. </view>
  35. <view class="job-info">
  36. <text class="job-details">{{ info.county }} {{ info.education }} {{ info.experience }}
  37. {{ info.salaryRange }} {{ info.postType }}</text>
  38. </view>
  39. </view>
  40. <!-- 失败原因 -->
  41. <view class="failure-reason-section">
  42. <view class="section-title">失败原因</view>
  43. <view class="reason-list">
  44. <view class="reason-item">
  45. <text class="reason-text">{{ info.auditContent }}</text>
  46. </view>
  47. </view>
  48. </view>
  49. </view>
  50. <!-- 其他状态 -->
  51. <view v-if="info.status !== 3">
  52. <view class="remarks flex justify-center">
  53. <view class="remarks-box flex justify-between align-center">
  54. <text style="color: rgba(1, 107, 246, 1);font-weight: bold;">{{ info.status == 1 ? '待审核' :
  55. (info.status == 2 ? '进行中' : (info.status == 3 ? '已拒绝' : (info.status == 4 ? '已取消' : '已关闭')))
  56. }}</text>
  57. <text style="color: rgba(156, 164, 171, 1);font-size: 24rpx;">{{ info.createTime }}</text>
  58. </view>
  59. </view>
  60. <view class="remarks flex justify-center" v-if="info.isOverdue == 1">
  61. <view class="remarks-box flex justify-between align-center">
  62. <text style="color: #000000;font-weight: bold;">已到期</text>
  63. <text style="color: #000000;font-size: 24rpx;">{{ info.overdueTime }}</text>
  64. </view>
  65. </view>
  66. <!-- 岗位要求 -->
  67. <view class="job flex justify-center">
  68. <view class="job-info flex justify-center">
  69. <view class="job-info-c">
  70. <view class="job-info-c-header">
  71. <view class="job-info-c-title">
  72. {{ info.ruleClassifyName }}
  73. </view>
  74. <view class="job-info-c-price">
  75. {{ info.salaryRange }}
  76. </view>
  77. </view>
  78. <!-- 地址 -->
  79. <view class="job-info-c-address">
  80. <u-icon name="map" color="rgba(58, 57, 67, 1)" style="margin-right: 10rpx;"
  81. size="24"></u-icon>
  82. {{ info.city }} {{ info.county }} {{ info.address }}
  83. </view>
  84. <view class="job-info-c-label flex align-center flex-wrap">
  85. <view class="job-info-c-label-item">
  86. {{ info.experience }}
  87. </view>
  88. <view class="job-info-c-label-item">
  89. {{ info.education }}
  90. </view>
  91. <view class="job-info-c-label-item">
  92. {{ info.industry }}
  93. </view>
  94. </view>
  95. <view class="warning-box">
  96. <image src="@/static/images/index/tishi.png"/>
  97. <view class="warning-txt">请注意辨认信息真伪,拒绝交纳报名费、线下交易等要求,谨防上当受骗</view>
  98. </view>
  99. </view>
  100. </view>
  101. </view>
  102. <!-- 急聘 -->
  103. <view class="urgent-banner" v-if="info.isDue == 1">
  104. <view class="urgent-left-section flex align-center">
  105. <view class="urgent-star-icon-wrapper flex align-center justify-center">
  106. <u-icon name="star-fill" color="rgba(251, 231, 185, 1)" size="40rpx"></u-icon>
  107. </view>
  108. <view class="urgent-text-content">
  109. <view class="urgent-main-title">急聘职位 | 2天后到期</view>
  110. <view class="urgent-sub-description">急聘免费体验中,升级正式版享受更多权益</view>
  111. <view class="urgent-benefits flex align-center">今日剩余权益:5次沟通,0次查看 <u-icon name="arrow-right"
  112. color="#FFFFFF" size="20rpx" style="margin-left: 10rpx;"></u-icon></view>
  113. </view>
  114. </view>
  115. <view class="urgent-upgrade-button">
  116. 升级正式版
  117. </view>
  118. </view>
  119. <!-- 岗位介绍 -->
  120. <view class="jobRemarks flex justify-center">
  121. <view class="jobRemarks-box flex justify-center">
  122. <view class="jobRemarks-box-c">
  123. <view class="jobRemarks-box-c-title flex align-center">
  124. <image src="/static/images/index/ins.png" class="title-icon"></image>
  125. <text>职位说明</text>
  126. </view>
  127. <view class="jobRemarks-box-c-label flex align-center flex-wrap" v-if="info.tag">
  128. <view class="jobRemarks-box-c-label-item" v-for="(item, index) in info.tag.split(',')"
  129. :key="index">
  130. {{ item }}
  131. </view>
  132. </view>
  133. <!--
  134. <view class="job-description">
  135. <view class="description-item">1.负责Amazon英国、欧洲站、制定推广与销售计划,达成团队要求的销售业绩;</view>
  136. <view class="description-item">2.做好数据的统计分析工作,收集、分析市场信息,竞争对手状况,并根据产品销售与排名变化,及时制定和调整产品的销售策略;</view>
  137. <view class="description-item">3.熟悉Amazon店铺操作,负责店铺产品编辑上传,精准把握关键词选择,负责标题,详情页面的优化;</view>
  138. <view class="description-item">4.熟悉Amazon平台规则,熟悉Amazon站内广告投放和促销式,站外促销,找红人营销等提高曝光率和转化率的引流方;</view>
  139. <view class="description-item">5.控制产品风险,合理规划FBA库存,及时合理处理滞销FBA库存;</view>
  140. <view class="description-item">6.对产品销售进行跟踪,分析,及时汇报销售中存在的问题,并给出可行性意见;</view>
  141. <view class="description-item">7.及时处理客户留言及回评,解答客户相关咨询与投诉,并进行问题整理统计分析,提高店铺的好评率,确保账号安全;</view>
  142. <view class="description-item">8.每月定期整理分析运营各项数据,并提出相应的合理化建议。</view>
  143. </view> -->
  144. <view class="jobRemarks-box-c-con" v-if="info.positionDetails">
  145. <view class="jobRemarks-box-c-con-item" v-html="info.positionDetails">
  146. </view>
  147. </view>
  148. <view class="jobRemarks-box-c-line"></view>
  149. <view class="jobRemarks-box-c-title flex align-center" style="margin-top: 25rpx;">
  150. <image src="/static/images/index/welfare.png" class="title-icon"></image>
  151. <text>岗位福利</text>
  152. </view>
  153. <view class="jobRemarks-box-c-label flex align-center flex-wrap" v-if="info.welfareTag">
  154. <view class="jobRemarks-box-c-label-item"
  155. v-for="(item, index) in info.welfareTag ? info.welfareTag.split(';') : []" :key="index">
  156. {{ item }}
  157. </view>
  158. </view>
  159. <view class="jobRemarks-box-c-label flex align-center flex-wrap" v-else>
  160. <view class="jobRemarks-box-c-label-item">
  161. 暂无
  162. </view>
  163. </view>
  164. <!-- <view class="job-description">
  165. <view class="description-item">1.完整的晋升机制,每年2次调薪机会;</view>
  166. <view class="description-item">2.满一年五天带薪年假;</view>
  167. <view class="description-item">3.每月员工下午茶;</view>
  168. <view class="description-item">4.各类大促活动有对应的激励方案;</view>
  169. <view class="description-item">5.丰厚的提成和年终奖励;</view>
  170. <view class="description-item">6.开设员工俱乐部:羽毛球、篮球、舞蹈、瑜伽等等。</view>
  171. </view> -->
  172. </view>
  173. </view>
  174. </view>
  175. <!-- 企业简介 -->
  176. <view class="enterprise">
  177. <!-- 公司介绍卡片 -->
  178. <view class="company-intro-card">
  179. <!-- @click="goInfo(info.company.companyId)" -->
  180. <view class="company-avatar">
  181. <image :src="info.company ? info.company.companyLogo : '../../../static/logo.png'"
  182. style="width: 95rpx;height: 95rpx;border-radius: 50%;" mode="aspectFill"></image>
  183. </view>
  184. <view class="company-info">
  185. <view class="company-name">{{ info.company ? info.company.companyAllName : '' }}</view>
  186. <view class="company-details">{{ info.company ? info.company.companyPeople : '' }} ·
  187. {{ info.company ? info.company.companyScope : '' }}
  188. </view>
  189. </view>
  190. <view class="company-arrow">
  191. <u-icon name="arrow-right" color="rgba(51, 51, 51, 1)" size="32"></u-icon>
  192. </view>
  193. </view>
  194. <!-- 地图区域 -->
  195. <view class="enterprise-box flex justify-center">
  196. <view class="enterprise-box-c">
  197. <view class="enterprise-box-c-bto flex align-center justify-between" @click.stop="gotoMap()">
  198. <view class="enterprise-box-c-bto-l flex align-center">
  199. <u-icon name="map" color="#016BF6" style="margin-left: 20rpx;margin-right: 10rpx;"
  200. size="28"></u-icon>
  201. <!-- {{info.province}}{{info.city}}{{info.county}} -->{{ info.address }}
  202. </view>
  203. <view class="enterprise-box-c-bto-r">
  204. <u-icon name="arrow-right" color="#016BF6" style="margin-right: 20rpx;"
  205. size="28"></u-icon>
  206. </view>
  207. </view>
  208. </view>
  209. </view>
  210. <!-- 职位招聘数据 -->
  211. <view class="postNum">
  212. <view style="font-size: 16px;font-weight: 600;">职位招聘数据</view>
  213. <view class="postNum-ul flex justify-around align-center">
  214. <view class="postNum-li">
  215. <view class="postNum-li-num align-center">34</view>
  216. <view class="postNum-li-txt">沟通过</view>
  217. </view>
  218. <view class="postNum-li ">
  219. <view class="postNum-li-num">34</view>
  220. <view class="postNum-li-txt">查看过</view>
  221. </view>
  222. <view class="postNum-li">
  223. <view class="postNum-li-num">34</view>
  224. <view class="postNum-li-txt">分享</view>
  225. </view>
  226. <view class="postNum-li">
  227. <view class="postNum-li-num">34</view>
  228. <view class="postNum-li-txt">收藏</view>
  229. </view>
  230. </view>
  231. <view style="font-size: 22rpx;color: rgba(102, 102, 102, 1);">职位发布时间:{{ info.createTime }}</view>
  232. </view>
  233. </view>
  234. </view>
  235. <!-- 底部操作 -->
  236. <view class="btn flex justify-center" v-if="info.status == 1">
  237. <view class="btn-box bgBox flex justify-center align-center" @click="cancelProject">
  238. 取消招聘
  239. </view>
  240. </view>
  241. <view class="btn flex justify-center" v-if="info.status == 4 || info.isOverdue == 1"
  242. @click="updataServeType(info.postPushId, 'save')">
  243. <view class="btn-box bgBox flex justify-center align-center">
  244. 重新发布
  245. </view>
  246. </view>
  247. <view class="btn flex justify-center" v-if="info.status == 3 && info.isOverdue == 0">
  248. <view class="btn-box bgBox flex justify-center align-center"
  249. @click="updataServeType(info.postPushId, 'update')"
  250. style="background-color: #ffffff;border: 1px solid #016bf6;color: #016bf6;">
  251. 编辑
  252. </view>
  253. </view>
  254. <view class="btn flex justify-center" v-if="info.status == 2 && info.isOverdue == 0">
  255. <view class="btn-box flex justify-between">
  256. <view class="btn-box bgBox btn-boxs flex justify-center align-center"
  257. @click="updataServeType(info.postPushId, 'update')"
  258. style="background-color: #ffffff;border: 1px solid #016bf6;color: #016bf6;">
  259. 编辑
  260. </view>
  261. <view class="btn-box bgBox btn-boxs flex justify-center align-center" @click="closeOpenJob('close')">
  262. 关闭岗位
  263. </view>
  264. </view>
  265. </view>
  266. <view class="btn flex justify-center" v-if="info.status == 5 && info.isOverdue == 0">
  267. <view class="btn-box flex justify-between">
  268. <view class="btn-box bgBox btn-boxs flex justify-center align-center"
  269. @click="updataServeType(info.postPushId, 'update')"
  270. style="background-color: #ffffff;border: 1px solid #016bf6;color: #016bf6;">
  271. 编辑
  272. </view>
  273. <view class="btn-box bgBox btn-boxs flex justify-center align-center" @click="closeOpenJob('open')">
  274. 开启岗位
  275. </view>
  276. </view>
  277. </view>
  278. </view>
  279. </template>
  280. <script>
  281. export default {
  282. data() {
  283. return {
  284. postPushId: '',
  285. info: {}, //岗位详情
  286. };
  287. },
  288. onLoad(option) {
  289. this.postPushId = option.postPushId
  290. this.getInfo()
  291. },
  292. methods: {
  293. //返回上一页
  294. goBack() {
  295. // 检查页面栈,如果没有可返回的页面,则跳转到职位管理
  296. const pages = getCurrentPages()
  297. if (pages.length > 1) {
  298. uni.navigateBack()
  299. } else {
  300. // 如果没有可返回的页面,跳转到职位管理页面
  301. uni.navigateTo({
  302. url: '/pages/jobManagement/jobManagement'
  303. })
  304. }
  305. },
  306. //修改岗位
  307. updataServeType(postPushId, type) {
  308. let companyStatus = uni.getStorageSync('companyStatus')
  309. if (companyStatus == 1) {
  310. uni.showToast({
  311. title: '企业认证审核中,请审核通过后操作!',
  312. icon: 'none'
  313. })
  314. return
  315. }
  316. if (companyStatus == 3) {
  317. uni.showToast({
  318. title: '企业认证审核未通过,请重新认证!',
  319. icon: 'none'
  320. })
  321. return
  322. }
  323. uni.navigateTo({
  324. url: '/pages/my/jobPosting?postPushId=' + postPushId + '&type=' + type
  325. })
  326. },
  327. //取消招聘
  328. cancelProject() {
  329. let that = this
  330. uni.showModal({
  331. content: '确认取消该招聘?',
  332. title: '提示',
  333. confirmColor: '#016BF6',
  334. success(iet) {
  335. if (iet.confirm) {
  336. let data = {
  337. postPushId: that.postPushId
  338. }
  339. that.$Request.postT('/app/postPush/cancelPostPush', data).then(res => {
  340. if (res.code == 0) {
  341. uni.showToast({
  342. title: '取消成功',
  343. duration: 1500,
  344. complete() {
  345. that.getInfo()
  346. }
  347. })
  348. } else {
  349. uni.showToast({
  350. title: res.msg,
  351. icon: 'none'
  352. })
  353. }
  354. uni.hideLoading()
  355. })
  356. }
  357. }
  358. })
  359. },
  360. //关闭/开启岗位
  361. closeOpenJob(type) {
  362. let that = this
  363. uni.showModal({
  364. title: '提示',
  365. content: type == 'close' ? '关闭岗位后,该岗位不会再推荐给用户,是否关闭?' : '开启岗位后,该岗位会重新推荐给用户,是否开启?',
  366. complete(ret) {
  367. if (ret.confirm) {
  368. that.$Request.getT('/app/postPush/closeOrOpen', {
  369. postPushId: that.postPushId
  370. }).then(res => {
  371. if (res.code == 0) {
  372. uni.showToast({
  373. title: type == 'close' ? '已关闭' : '已开启',
  374. duration: 1500,
  375. complete() {
  376. that.getInfo()
  377. }
  378. })
  379. } else {
  380. uni.showToast({
  381. title: res.msg,
  382. icon: 'none'
  383. })
  384. }
  385. })
  386. }
  387. }
  388. })
  389. },
  390. //拉起地图导航
  391. gotoMap() {
  392. let that = this
  393. uni.openLocation({
  394. latitude: that.info.lat,
  395. longitude: that.info.lng,
  396. address: that.info.province + '' + that.info.city + '' + that.info.county + '' + that.info
  397. .address,
  398. name: that.info.address,
  399. // complete(ret) {
  400. // }
  401. })
  402. },
  403. /**
  404. * 获取岗位详情
  405. */
  406. getInfo() {
  407. this.$Request.getT("/app/postPush/selectPostPushDetails", {
  408. // userId:uni.getStorageSync('userId'),
  409. postPushId: this.postPushId
  410. }).then(res => {
  411. if (res.code == 0) {
  412. this.info = res.data
  413. }
  414. })
  415. },
  416. }
  417. }
  418. </script>
  419. <style lang="scss">
  420. page {
  421. // background-color: #F2F2F7;
  422. padding-top: 160rpx;
  423. }
  424. .warning-box {
  425. background: rgba(255, 251, 232, 1);
  426. color: rgba(237, 106, 12, 1);
  427. font-family: Microsoft YaHei UI;
  428. font-size: 22rpx;
  429. font-weight: 400;
  430. letter-spacing: 0px;
  431. padding: 20rpx 32rpx;
  432. box-sizing: border-box;
  433. text-align: left;
  434. margin-top: 20rpx;
  435. display: flex;
  436. align-items: center;
  437. .warning-txt{
  438. flex: 1;
  439. overflow: hidden;
  440. white-space: nowrap;
  441. text-overflow: ellipsis;
  442. }
  443. image{
  444. width: 32rpx;
  445. height: 32rpx;
  446. flex-shrink: 0;
  447. margin-right: 20rpx;
  448. }
  449. }
  450. .fixed-header {
  451. position: fixed;
  452. top: 0;
  453. left: 0;
  454. right: 0;
  455. z-index: 9999;
  456. background-color: #ffffff;
  457. }
  458. .custom-navbar {
  459. padding-top: 80rpx;
  460. background-color: #ffffff;
  461. box-sizing: border-box;
  462. .navbar-content {
  463. display: flex;
  464. align-items: center;
  465. justify-content: space-between;
  466. height: 88rpx;
  467. padding: 0 40rpx;
  468. .nav-left,
  469. .nav-right {
  470. width: 60rpx;
  471. height: 60rpx;
  472. display: flex;
  473. align-items: center;
  474. justify-content: center;
  475. }
  476. .nav-title {
  477. color: rgba(51, 51, 51, 1);
  478. font-family: DM Sans;
  479. font-size: 30rpx;
  480. font-weight: 700;
  481. line-height: 52px;
  482. letter-spacing: 0.5%;
  483. text-align: center;
  484. }
  485. }
  486. }
  487. .status-section {
  488. display: flex;
  489. justify-content: center;
  490. align-items: center;
  491. margin: 40rpx 0rpx 40rpx 0rpx;
  492. .status-icon {
  493. margin-right: 20rpx;
  494. display: flex;
  495. align-items: center;
  496. .status-icon-img {
  497. width: 48rpx;
  498. height: 48rpx;
  499. }
  500. }
  501. .status-title {
  502. color: rgba(29, 33, 41, 1);
  503. font-family: DM Sans;
  504. font-size: 36rpx;
  505. font-weight: 500;
  506. line-height: 48rpx;
  507. letter-spacing: 0%;
  508. text-align: left;
  509. display: flex;
  510. align-items: center;
  511. }
  512. }
  513. .job-info-card {
  514. background: #ffffff;
  515. border-radius: 12rpx;
  516. margin: 0 40rpx 40rpx 40rpx;
  517. padding: 32rpx;
  518. border: 0.5px solid rgba(227, 231, 236, 1);
  519. .job-header {
  520. display: flex;
  521. justify-content: space-between;
  522. align-items: flex-start;
  523. margin-bottom: 16rpx;
  524. .job-title-section {
  525. flex: 1;
  526. .job-title {
  527. color: rgba(153, 153, 153, 1);
  528. font-family: DM Sans;
  529. font-size: 28rpx;
  530. font-weight: 400;
  531. line-height: 44rpx;
  532. letter-spacing: 0.5%;
  533. text-align: left;
  534. }
  535. }
  536. .job-status {
  537. .status-text {
  538. color: rgba(153, 153, 153, 1);
  539. font-family: DM Sans;
  540. font-size: 18rpx;
  541. font-weight: 400;
  542. line-height: 20rpx;
  543. letter-spacing: -0.5px;
  544. text-align: right;
  545. }
  546. }
  547. }
  548. .job-info {
  549. .job-details {
  550. color: rgba(153, 153, 153, 1);
  551. font-family: DM Sans;
  552. font-size: 28rpx;
  553. font-weight: 400;
  554. line-height: 36rpx;
  555. letter-spacing: 0.5%;
  556. text-align: left;
  557. }
  558. }
  559. }
  560. .failure-reason-section {
  561. margin: 0 40rpx;
  562. .section-title {
  563. color: rgba(31, 44, 55, 1);
  564. font-family: DM Sans;
  565. font-size: 28rpx;
  566. font-weight: 500;
  567. line-height: 44rpx;
  568. letter-spacing: 0.5%;
  569. text-align: left;
  570. margin-bottom: 20rpx;
  571. }
  572. .reason-list {
  573. .reason-item {
  574. margin-bottom: 16rpx;
  575. .reason-text {
  576. color: rgba(153, 153, 153, 1);
  577. font-family: DM Sans;
  578. font-size: 24rpx;
  579. font-weight: 500;
  580. line-height: 48rpx;
  581. letter-spacing: 0.5%;
  582. text-align: left;
  583. }
  584. }
  585. }
  586. }
  587. .remarks {
  588. width: 100%;
  589. margin-top: 30rpx;
  590. .remarks-box {
  591. width: 686rpx;
  592. border-radius: 24rpx;
  593. background-color: #ffffff;
  594. padding: 0rpx 20rpx;
  595. color: red;
  596. }
  597. }
  598. .job {
  599. width: 100%;
  600. margin-top: 30rpx;
  601. .job-info {
  602. width: 686rpx;
  603. height: 100%;
  604. border-radius: 24rpx;
  605. background-color: #ffffff;
  606. .job-info-c {
  607. // width: 626rpx;
  608. width: 100%;
  609. height: 100%;
  610. padding: 30rpx 20rpx;
  611. }
  612. .job-info-c-header {
  613. display: flex;
  614. justify-content: space-between;
  615. align-items: center;
  616. }
  617. .job-info-c-address {
  618. color: rgba(156, 164, 171, 1);
  619. font-family: DM Sans;
  620. font-size: 24rpx;
  621. font-weight: 400;
  622. line-height: 26rpx;
  623. letter-spacing: 0.5%;
  624. text-align: left;
  625. padding: 20rpx 0;
  626. }
  627. .job-info-c-title {
  628. color: rgba(58, 57, 67, 1);
  629. font-family: DM Sans;
  630. font-size: 48rpx;
  631. font-weight: 700;
  632. line-height: 60rpx;
  633. letter-spacing: 0px;
  634. text-align: left;
  635. }
  636. .job-info-c-label {
  637. // margin-top: 30rpx;
  638. .job-info-c-label-item {
  639. color: rgba(153, 153, 153, 1);
  640. font-family: DM Sans;
  641. font-size: 24rpx;
  642. font-weight: 400;
  643. line-height: 20rpx;
  644. letter-spacing: 0.5%;
  645. padding: 12rpx;
  646. text-align: left;
  647. margin-right: 30rpx;
  648. border-radius: 12rpx;
  649. background: rgba(198, 198, 198, 0.1);
  650. }
  651. }
  652. .job-info-c-price {
  653. color: rgba(1, 107, 246, 1);
  654. font-family: DM Sans;
  655. font-size: 32rpx;
  656. font-weight: 700;
  657. line-height: 40rpx;
  658. letter-spacing: 0.5%;
  659. text-align: right;
  660. }
  661. }
  662. }
  663. .jobRemarks {
  664. width: 100%;
  665. padding: 0 20rpx;
  666. .jobRemarks-box {
  667. width: 100%;
  668. height: 100%;
  669. background-color: #ffffff;
  670. border-radius: 24rpx;
  671. .jobRemarks-box-c {
  672. width: 100%;
  673. height: 100%;
  674. padding: 30rpx 20rpx;
  675. }
  676. .jobRemarks-box-c-title {
  677. color: rgba(1, 107, 246, 1);
  678. font-size: 32rpx;
  679. padding: 8px 12px;
  680. border-radius: 36px;
  681. font-weight: 500;
  682. background: rgba(246, 246, 246, 1);
  683. .title-icon {
  684. width: 32rpx;
  685. height: 32rpx;
  686. }
  687. }
  688. .job-description {
  689. margin-top: 20rpx;
  690. margin-bottom: 20rpx;
  691. .description-item {
  692. color: rgba(97, 110, 124, 1);
  693. font-family: DM Sans;
  694. font-size: 26rpx;
  695. font-weight: 400;
  696. line-height: 16px;
  697. letter-spacing: 0px;
  698. text-align: left;
  699. margin-bottom: 8rpx;
  700. }
  701. }
  702. .jobRemarks-box-c-label {
  703. width: 100%;
  704. margin-top: 25rpx;
  705. .jobRemarks-box-c-label-item {
  706. color: rgba(1, 107, 246, 1);
  707. font-size: 20rpx;
  708. padding: 10rpx 15rpx;
  709. background-color: #F6F6F6;
  710. border-radius: 10rpx;
  711. margin-right: 20rpx;
  712. margin-bottom: 10rpx;
  713. background: rgba(252, 233, 220, 1);
  714. }
  715. }
  716. .jobRemarks-box-c-con {
  717. width: 100%;
  718. margin-top: 25rpx;
  719. .jobRemarks-box-c-con-item {
  720. margin-bottom: 10rpx;
  721. color: #141414;
  722. font-size: 28rpx;
  723. font-weight: 500;
  724. }
  725. }
  726. .jobRemarks-box-c-line {
  727. width: 100%;
  728. border: 1rpx solid #E6E6E6;
  729. margin-top: 25rpx;
  730. }
  731. }
  732. }
  733. .enterprise {
  734. width: 100%;
  735. margin-top: 25rpx;
  736. padding: 0 20rpx;
  737. .company-intro-card {
  738. width: 100%;
  739. background-color: #ffffff;
  740. border-radius: 24rpx;
  741. padding: 12rpx 24rpx;
  742. margin-bottom: 20rpx;
  743. display: flex;
  744. align-items: center;
  745. border: 0.5px solid rgba(227, 231, 236, 1);
  746. .company-avatar {
  747. flex-shrink: 0;
  748. margin-right: 24rpx;
  749. }
  750. .company-info {
  751. flex: 1;
  752. .company-name {
  753. color: rgba(51, 51, 51, 1);
  754. font-size: 26rpx;
  755. font-weight: 600;
  756. line-height: 1.4;
  757. margin-bottom: 8rpx;
  758. }
  759. .company-details {
  760. color: rgba(153, 153, 153, 1);
  761. font-size: 24rpx;
  762. font-weight: 400;
  763. line-height: 1.4;
  764. }
  765. }
  766. .company-arrow {
  767. flex-shrink: 0;
  768. margin-left: 48rpx;
  769. }
  770. }
  771. .enterprise-box {
  772. width: 100%;
  773. background-color: #ffffff;
  774. height: 100%;
  775. padding-bottom: 25rpx;
  776. border-radius: 24rpx;
  777. .enterprise-box-c {
  778. width: 100%;
  779. height: 100%;
  780. }
  781. .enterprise-box-c-bto {
  782. width: 100%;
  783. // padding-top: 15rpx;
  784. padding-bottom: 15rpx;
  785. background-color: #EDFFFB;
  786. border-radius: 30rpx;
  787. margin-top: 20rpx;
  788. color: #016BF6;
  789. font-size: 24rpx;
  790. font-weight: 500;
  791. }
  792. }
  793. }
  794. .postNum {
  795. padding: 12rpx;
  796. }
  797. .postNum-ul {
  798. margin: 22px auto;
  799. font-family: DM Sans;
  800. }
  801. .postNum-li-num {
  802. font-size: 32rpx;
  803. font-weight: 600;
  804. line-height: 48rpx;
  805. text-align: center;
  806. }
  807. .postNum-li-txt {
  808. font-size: 26rpx;
  809. font-weight: 600;
  810. line-height: 48rpx;
  811. text-align: center;
  812. }
  813. .urgent-banner {
  814. width: 686rpx;
  815. height: 150rpx;
  816. background: linear-gradient(180deg, rgba(255, 181, 60, 1) 100%, rgba(251, 231, 185, 1) 50%);
  817. border-radius: 16rpx;
  818. display: flex;
  819. align-items: flex-start;
  820. justify-content: space-between;
  821. padding: 20rpx 30rpx;
  822. margin: 0 auto 20rpx auto;
  823. .urgent-left-section {
  824. flex: 1;
  825. display: flex;
  826. align-items: center;
  827. .urgent-star-icon-wrapper {
  828. width: 72rpx;
  829. height: 72rpx;
  830. border-radius: 50%;
  831. background: linear-gradient(90deg, rgba(255, 65, 86, 1) 0%, rgba(255, 102, 0, 0.35) 100%);
  832. margin-right: 24rpx;
  833. flex-shrink: 0;
  834. }
  835. .urgent-text-content {
  836. flex: 1;
  837. .urgent-main-title {
  838. color: rgba(255, 255, 255, 1);
  839. font-family: DM Sans;
  840. font-size: 24rpx;
  841. font-weight: 500;
  842. line-height: 32rpx;
  843. letter-spacing: 0%;
  844. text-align: left;
  845. margin-bottom: 8rpx;
  846. }
  847. .urgent-sub-description {
  848. color: rgba(255, 255, 255, 1);
  849. font-family: DM Sans;
  850. font-size: 20rpx;
  851. font-weight: 400;
  852. line-height: 26rpx;
  853. letter-spacing: 0%;
  854. text-align: left;
  855. margin-bottom: 6rpx;
  856. }
  857. .urgent-benefits {
  858. color: rgba(255, 255, 255, 1);
  859. font-family: DM Sans;
  860. font-size: 20rpx;
  861. font-weight: 400;
  862. line-height: 26rpx;
  863. letter-spacing: 0%;
  864. text-align: left;
  865. }
  866. }
  867. }
  868. .urgent-upgrade-button {
  869. background: linear-gradient(90deg, rgba(255, 65, 86, 1) 0%, rgba(255, 102, 0, 0.35) 100%);
  870. padding: 8rpx;
  871. border-radius: 8rpx;
  872. color: rgba(255, 255, 255, 1);
  873. font-family: DM Sans;
  874. font-size: 16rpx;
  875. font-weight: 400;
  876. line-height: 20rpx;
  877. letter-spacing: -0.5px;
  878. text-align: right;
  879. margin-left: 20rpx;
  880. }
  881. }
  882. .bgBox {
  883. color: #ffffff;
  884. background-color: rgba(1, 107, 246, 1);
  885. font-weight: bold;
  886. border-radius: 50rpx;
  887. }
  888. .btn {
  889. width: 100%;
  890. height: 88rpx;
  891. margin: 30rpx 0rpx;
  892. border-radius: 40rpx;
  893. .btn-boxs {
  894. width: 49% !important;
  895. }
  896. .btn-box {
  897. width: 686rpx;
  898. height: 100%;
  899. }
  900. }
  901. </style>