enterpriseInfo.vue 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867
  1. <template>
  2. <view class="content">
  3. <!-- 顶部导航 -->
  4. <view class="nav-bar">
  5. <view class="nav-left" @click="goBack">
  6. <u-icon name="arrow-leftward" color="rgba(51, 51, 51, 1)" style="font-size: 38rpx;"></u-icon>
  7. </view>
  8. <view class="nav-title">公司介绍</view>
  9. <view class="nav-right">
  10. <view class="nav-icons">
  11. <view class="nav-icon" @click="setCollection">
  12. <image v-if="isCollection==0" src="/static/images/index/guanzhu.svg" class="icon-img"></image>
  13. <image v-else src="/static/images/index/gzActive.svg" class="icon-img"></image>
  14. </view>
  15. <view class="nav-icon" @click="showShare">
  16. <image src="/static/images/index/fenxiang.svg" class="icon-img"></image>
  17. </view>
  18. </view>
  19. </view>
  20. </view>
  21. <!-- 企业信息 -->
  22. <view class="info flex justify-center">
  23. <view class="info-box flex align-center justify-between">
  24. <view class="info-box-r">
  25. <view class="info-box-r-title" v-show="info.companyName">
  26. {{info.companyName}}
  27. </view>
  28. <view class="info-box-r-label flex align-center flex-wrap">
  29. <view class="info-box-r-label-item" v-if="info.companyPeople">
  30. {{info.companyPeople}}
  31. </view>
  32. <view class="info-box-r-label-item" v-show="info.companyScope">
  33. {{info.companyScope}}
  34. </view>
  35. </view>
  36. </view>
  37. <image :src="info.companyLogo?info.companyLogo:'../../static/logo.png'"
  38. style="width: 120rpx;height: 120rpx;border-radius: 50%;" mode="">
  39. </image>
  40. </view>
  41. </view>
  42. <!-- 急聘标签 -->
  43. <!-- 公司地址 -->
  44. <view class="address flex justify-center">
  45. <view class="address-box flex justify-center">
  46. <view class="address-box-c">
  47. <!-- 工作时间 -->
  48. <view class="working-hours flex align-center">
  49. <u-icon name="clock" color="rgba(51, 51, 51, 1)" size="38" style="margin-right: 12rpx;"></u-icon>
  50. <text>上午9:00-下午06:30</text>
  51. </view>
  52. <!-- 福利标签 -->
  53. <view class="benefits-section">
  54. <view class="benefits-tags flex align-center flex-wrap">
  55. <view class="benefit-tag">
  56. <image src="/static/images/index/huizhang.svg" class="tag-icon"></image>
  57. <text>五险一金</text>
  58. </view>
  59. <view class="benefit-tag">
  60. <image src="/static/images/index/huizhang.svg" class="tag-icon"></image>
  61. <text>补充医疗保险</text>
  62. </view>
  63. <view class="benefit-tag">
  64. <image src="/static/images/index/huizhang.svg" class="tag-icon"></image>
  65. <text>定期体检</text>
  66. </view>
  67. <view class="benefit-tag">
  68. <image src="/static/images/index/huizhang.svg" class="tag-icon"></image>
  69. <text>年终奖</text>
  70. </view>
  71. </view>
  72. </view>
  73. <!-- 地址信息 -->
  74. <view @click="openMap()" class="address-box-c-add flex justify-between align-center">
  75. <view class="address-box-c-add-l flex align-center">
  76. <u-icon name="map" style="margin-right: 12rpx;" color="rgba(51, 51, 51, 1)" size="24"></u-icon>
  77. <text>{{info.province?info.province:''}}{{info.city?info.city:''}}{{info.district?info.district:''}}{{info.companyAddress?info.companyAddress:''}}</text>
  78. </view>
  79. <!--
  80. <view class="address-box-c-add-r">
  81. <u-icon name="arrow-right" color="rgba(51, 51, 51, 1)" size="24"></u-icon>
  82. </view>
  83. -->
  84. </view>
  85. </view>
  86. </view>
  87. </view>
  88. <!-- 企业介绍 -->
  89. <view class="remarks flex justify-center">
  90. <view class="remarks-box">
  91. <view class="remarks-box-title">
  92. 公司介绍
  93. </view>
  94. <view class="remarks-box-con">
  95. <u-read-more show-height="100" :shadow-style="shadowStyle" color="#FD6416" text-indent="0"
  96. closeText="展开">
  97. <!-- <rich-text :nodes="info.companyDetails"
  98. style="color: #ffffff;font-size: 28rpx;font-weight: 500;">
  99. </rich-text> -->
  100. <view class="remarks-box-con-item">
  101. 汉睿国际(汉睿集团)成立于2019年11月,是一家致力于打造跨境电商一站式综合服务平台的企业。集团依托全球视野下的跨境服务资源,通过“跨境电商赋能 + 人才培养孵化 + 产业链撮合”的运营模式,推动跨境电商本土XXXXXXXXXXXXXXXXXX...
  102. </view>
  103. </u-read-more>
  104. </view>
  105. </view>
  106. </view>
  107. <!-- 主营业务 -->
  108. <view class="business-section flex justify-center">
  109. <view class="business-box">
  110. <view class="business-title">主营业务</view>
  111. <view class="business-tags flex flex-wrap">
  112. <view class="business-tag" v-for="(business, index) in businessList" :key="index">
  113. {{business}}
  114. </view>
  115. </view>
  116. </view>
  117. </view>
  118. <!-- hr介绍 -->
  119. <view class="hr-section flex justify-center">
  120. <view class="hr-box">
  121. <view class="hr-header flex justify-between align-center">
  122. <view class="hr-title">HR介绍</view>
  123. <view class="view-all-jobs" @click="goToMoreJobs">
  124. <text>查看所有职位</text>
  125. </view>
  126. </view>
  127. <view class="hr-list flex justify-between">
  128. <view class="hr-item" v-for="(hr, index) in hrList" :key="index">
  129. <view class="hr-content flex align-center">
  130. <view class="hr-avatar-container">
  131. <view class="hr-avatar" :style="{ backgroundColor: hr.color }">
  132. <text class="avatar-text">{{hr.name.charAt(0)}}</text>
  133. </view>
  134. <view class="online-dot"></view>
  135. </view>
  136. <view class="hr-text">
  137. <view class="hr-name">{{hr.name}}</view>
  138. <view class="hr-position">{{hr.position}}</view>
  139. </view>
  140. </view>
  141. </view>
  142. </view>
  143. </view>
  144. </view>
  145. <!-- 人才发展 -->
  146. <view class="talent-section flex justify-center">
  147. <view class="talent-box">
  148. <view class="talent-title">人才发展</view>
  149. <view class="talent-tags flex flex-wrap">
  150. <view class="talent-tag" v-for="(talent, index) in talentList" :key="index">
  151. {{talent}}
  152. </view>
  153. </view>
  154. </view>
  155. </view>
  156. <!-- 公司风采 -->
  157. <!-- 工商信息 -->
  158. <view class="gsInfo flex justify-center">
  159. <view class="gsInfo-box flex justify-center">
  160. <view class="gsInfo-box-c">
  161. <view class="gsInfo-box-c-title">
  162. 工商信息
  163. </view>
  164. <view class="gsInfo-box-c-item">
  165. 公司全称:{{info.companyName?info.companyName:''}}
  166. </view>
  167. <view class="gsInfo-box-c-item">
  168. 成立时间:{{info.companyCreateTime?info.companyCreateTime:''}}
  169. </view>
  170. <view class="gsInfo-box-c-item">
  171. 注册资本:{{info.companyRegisteredFund?info.companyRegisteredFund:''}}万人民币
  172. </view>
  173. <view class="gsInfo-box-c-item">
  174. 法人代表:{{info.companyLegalPerson?info.companyLegalPerson:'未知'}}
  175. </view>
  176. </view>
  177. </view>
  178. </view>
  179. <!-- 全部岗位弹窗 -->
  180. <btnPopous ref="jobPopup" v-if="showJobPopup && companyId" :companyId="companyId" :cittArr="cittArr" :classify="classify" :moneyArr="moneyArr"
  181. :jyArr="jyArr" @closePopup="closeJobPopup" />
  182. </view>
  183. </template>
  184. <script>
  185. import btnPopous from '../../components/btnPopous/btnPopous.vue'
  186. export default {
  187. components: {
  188. btnPopous
  189. },
  190. data() {
  191. return {
  192. backStyle: {
  193. color: '#ffffff'
  194. },
  195. shadowStyle: {
  196. backgroundImage: 'none',
  197. },
  198. companyId: '',
  199. info: {},
  200. isCollection: 0, // 收藏状态
  201. showJobPopup: false, // 控制职位弹窗显示
  202. cittArr: [], //企业发布岗位的城市数组
  203. moneyArr: [], //薪资列表数组
  204. jyArr: [], //工作经验列表数组
  205. classify: [], //岗位名称数组
  206. hrList: [
  207. {
  208. name: '孙先生',
  209. position: '人事经理',
  210. color: '#4A90E2'
  211. },
  212. {
  213. name: '宋先生',
  214. position: 'HRBP',
  215. color: '#7ED321'
  216. },
  217. {
  218. name: '邹先生',
  219. position: 'HR助力',
  220. color: '#F5A623'
  221. }
  222. ],
  223. businessList: ['居家日用', '食品饮料', '3C数码', '美妆日化'],
  224. talentList: ['考核晋升', '项目奖金', '股票期权', '每年普调']
  225. };
  226. },
  227. //分享
  228. onShareAppMessage(res) {
  229. return {
  230. path: '/my/enterpriseInfo/enterpriseInfo?companyId=' + this.companyId + '&invitation=' + uni
  231. .getStorageSync(
  232. 'invitationCode'),
  233. title: this.info.companyName,
  234. }
  235. },
  236. /*
  237. * uniapp微信小程序分享页面到微信朋友圈
  238. */
  239. onShareTimeline(res) {
  240. return {
  241. path: '/my/enterpriseInfo/enterpriseInfo?companyId=' + this.companyId + '&invitation=' + uni
  242. .getStorageSync(
  243. 'invitationCode'),
  244. title: this.info.companyName,
  245. }
  246. },
  247. // onPageScroll(e) {
  248. // if (e.scrollTop > 100) {
  249. // uni.setNavigationBarTitle({
  250. // title: '西安省钱兄网络科技有限公司'
  251. // })
  252. // } else {
  253. // uni.setNavigationBarTitle({
  254. // title: '企业详情'
  255. // })
  256. // }
  257. // },
  258. onLoad(option) {
  259. // 获取邀请码保存到本地
  260. if (option.invitation) {
  261. this.$queue.setData('inviterCode', option.invitation);
  262. }
  263. // #ifdef MP-WEIXIN
  264. if (option.scene) {
  265. const scene = decodeURIComponent(option.scene);
  266. this.$queue.setData('inviterCode', scene.split(',')[0]);
  267. }
  268. // #endif
  269. uni.showLoading({
  270. title: '加载中'
  271. })
  272. this.companyId = option.companyId
  273. this.getInfo();
  274. this.getCityCompanyId();
  275. this.getMoney();
  276. this.getJy();
  277. this.getClassify();
  278. },
  279. methods: {
  280. // 返回上一页
  281. goBack() {
  282. uni.navigateBack();
  283. },
  284. // 显示分享选项
  285. showShare() {
  286. // 可以添加分享逻辑
  287. uni.showToast({
  288. title: '分享功能',
  289. icon: 'none'
  290. });
  291. },
  292. // 收藏企业
  293. setCollection() {
  294. this.$Request.postT("/app/myCollection/saveCollection", {
  295. companyId: this.companyId,
  296. type: 2 // 2表示收藏企业
  297. }).then(res => {
  298. if (res.code == 0) {
  299. uni.showToast({
  300. title: res.msg
  301. })
  302. this.isCollection = this.isCollection == 0 ? 1 : 0;
  303. }
  304. })
  305. },
  306. // 显示所有职位弹窗
  307. goToMoreJobs() {
  308. this.showJobPopup = true;
  309. this.$nextTick(() => {
  310. if (this.$refs.jobPopup) {
  311. this.$refs.jobPopup.topY = true;
  312. }
  313. });
  314. },
  315. // 关闭职位弹窗
  316. closeJobPopup() {
  317. this.showJobPopup = false;
  318. },
  319. openMap() {
  320. let that = this
  321. if (that.info.companyLat && that.info.companyLng) {
  322. uni.openLocation({
  323. latitude: that.info.companyLat,
  324. longitude: that.info.companyLng,
  325. address: that.info.province + '' + that.info.city + '' + that.info.district + '' + that
  326. .info
  327. .companyAddress,
  328. name: that.info.companyAddress
  329. })
  330. } else {
  331. uni.showToast({
  332. title: '暂无位置信息',
  333. icon: 'none'
  334. })
  335. }
  336. },
  337. /**
  338. * 岗位分类数组
  339. */
  340. getClassify() {
  341. this.$Request.getT("/app/postPush/getCompanyClassify", {
  342. companyId: this.companyId
  343. }).then(res => {
  344. if (res.code == 0) {
  345. this.classify = res.data //岗位分类列表数组
  346. }
  347. })
  348. },
  349. /**
  350. * 获取薪资 列表
  351. */
  352. getMoney() {
  353. this.$Request.get("/app/dict/list", {
  354. type: '薪资 '
  355. }).then(res => {
  356. if (res.code == 0) {
  357. this.moneyArr = res.data //薪资列表数组
  358. }
  359. })
  360. },
  361. /**
  362. * 获取工作经验列表
  363. */
  364. getJy() {
  365. this.$Request.get("/app/dict/list", {
  366. type: '工作经验 '
  367. }).then(res => {
  368. if (res.code == 0) {
  369. this.jyArr = res.data //工作经验列表数组
  370. }
  371. })
  372. },
  373. /**
  374. * 根据公司id查询已发布岗位的市
  375. */
  376. getCityCompanyId() {
  377. let data = {
  378. companyId: this.companyId
  379. }
  380. this.$Request.getT("/app/postPush/getCityCompanyId", data).then(res => {
  381. if (res.code == 0) {
  382. this.cittArr = res.data
  383. }
  384. })
  385. },
  386. //获取企业详情
  387. getInfo() {
  388. let that = this
  389. this.$Request.get("/app/company/selectCompanyByCompanyId", {
  390. companyId: this.companyId
  391. }).then(res => {
  392. if (res.code == 0) {
  393. this.info = res.data
  394. if (this.info.companyName) {
  395. uni.setNavigationBarTitle({
  396. title: that.info.companyName
  397. })
  398. }
  399. // let reg = /.+?(省|市|自治区|自治州|县|区)/g
  400. // let cityarr = this.info.companyAddress.match(reg)
  401. // if (cityarr && cityarr != null) {
  402. // if (cityarr.length == 3) {
  403. // this.info.companyAddress = cityarr[0] + '' + cityarr[1] + '' + cityarr[2]
  404. // } else {
  405. // this.info.companyAddress = cityarr[0] + '' + cityarr[1]
  406. // }
  407. // }
  408. }
  409. uni.hideLoading()
  410. })
  411. },
  412. }
  413. }
  414. </script>
  415. <style lang="scss">
  416. page {
  417. // background-color: #4B4D5C;
  418. // overflow: hidden;
  419. }
  420. .content {
  421. padding-top: 88rpx!important;
  422. }
  423. .nav-bar {
  424. display: flex;
  425. align-items: center;
  426. justify-content: space-between;
  427. margin-bottom: 30rpx;
  428. padding: 0 40rpx;
  429. .nav-left {
  430. display: flex;
  431. align-items: center;
  432. justify-content: flex-start;
  433. width: 96rpx;
  434. }
  435. .nav-title {
  436. color: rgba(34, 37, 42, 1);
  437. font-family: DM Sans;
  438. font-size: 16px;
  439. font-weight: 400;
  440. line-height: 24px;
  441. letter-spacing: 0px;
  442. text-align: left;
  443. }
  444. .nav-right {
  445. display: flex;
  446. align-items: center;
  447. justify-content: flex-end;
  448. width: 96rpx;
  449. }
  450. .nav-icons {
  451. display: flex;
  452. align-items: center;
  453. gap: 24rpx;
  454. }
  455. .nav-icon {
  456. display: flex;
  457. align-items: center;
  458. justify-content: center;
  459. width: 36rpx;
  460. height: 36rpx;
  461. }
  462. .icon-img {
  463. width: 42rpx;
  464. height: 42rpx;
  465. }
  466. }
  467. .info {
  468. width: 100%;
  469. height: 100rpx;
  470. margin-top: 50rpx;
  471. .info-box {
  472. width: 686rpx;
  473. height: 100%;
  474. .info-box-r {
  475. width: calc(100% - 150rpx);
  476. }
  477. .info-box-r-title {
  478. color: rgba(58, 57, 67, 1);
  479. font-family: DM Sans;
  480. font-size: 42rpx;
  481. font-weight: 700;
  482. line-height: 30px;
  483. letter-spacing: 0px;
  484. text-align: left;
  485. }
  486. .info-box-r-label {
  487. color: #FFFFFF;
  488. font-size: 28rpx;
  489. font-weight: 500;
  490. margin-top: 20rpx;
  491. .info-box-r-label-item {
  492. color: rgba(153, 153, 153, 1);
  493. font-family: DM Sans;
  494. font-size: 24rpx;
  495. font-weight: 400;
  496. line-height: 16px;
  497. letter-spacing: 0%;
  498. text-align: left;
  499. }
  500. }
  501. }
  502. }
  503. .remarks {
  504. width: 100%;
  505. margin-top: 50rpx;
  506. .remarks-box {
  507. width: 686rpx;
  508. .remarks-box-title {
  509. color: rgba(34, 37, 42, 1);
  510. font-family: DM Sans;
  511. font-size: 16px;
  512. font-weight: 400;
  513. line-height: 24px;
  514. letter-spacing: 0px;
  515. text-align: left;
  516. }
  517. .remarks-box-con {
  518. margin-top: 30rpx;
  519. .remarks-box-con-item {
  520. color: rgba(153, 153, 153, 1);
  521. font-family: DM Sans;
  522. font-size: 14px;
  523. font-weight: 400;
  524. line-height: 18px;
  525. letter-spacing: 0px;
  526. text-align: left;
  527. }
  528. }
  529. }
  530. }
  531. .address {
  532. width: 100%;
  533. margin-top: 50rpx;
  534. .address-box {
  535. width: 686rpx;
  536. border-radius: 24rpx;
  537. .address-box-c {
  538. width: 100%;
  539. .working-hours {
  540. margin-bottom: 24rpx;
  541. text {
  542. color: rgba(51, 51, 51, 1);
  543. font-size: 28rpx;
  544. font-weight: 400;
  545. }
  546. }
  547. .benefits-section {
  548. margin-bottom: 24rpx;
  549. .benefits-tags {
  550. gap: 12rpx;
  551. .benefit-tag {
  552. background: rgba(40, 107, 229, 0.1);
  553. border-radius: 12rpx;
  554. padding: 12rpx;
  555. display: flex;
  556. align-items: center;
  557. gap: 8rpx;
  558. .tag-icon {
  559. width: 48rpx;
  560. height: 48rpx;
  561. }
  562. text {
  563. color: rgba(34, 37, 42, 0.5);
  564. font-family: DM Sans;
  565. font-size: 12px;
  566. font-weight: 400;
  567. line-height: 22px;
  568. letter-spacing: 0px;
  569. text-align: left;
  570. }
  571. }
  572. }
  573. }
  574. .address-box-c-add {
  575. padding: 0;
  576. .address-box-c-add-l {
  577. color: rgba(102, 102, 102, 1);
  578. font-family: DM Sans;
  579. font-size: 24rpx;
  580. font-weight: 400;
  581. line-height: 16px;
  582. letter-spacing: 0px;
  583. text-align: left;
  584. }
  585. .address-box-c-add-r {
  586. width: 48rpx;
  587. height: 48rpx;
  588. display: flex;
  589. align-items: center;
  590. justify-content: center;
  591. }
  592. }
  593. }
  594. }
  595. }
  596. .business-section {
  597. width: 100%;
  598. margin-top: 30rpx;
  599. .business-box {
  600. width: 686rpx;
  601. background: #ffffff;
  602. border-radius: 24rpx;
  603. .business-title {
  604. color: rgba(34, 37, 42, 1);
  605. font-family: DM Sans;
  606. font-size: 16px;
  607. font-weight: 400;
  608. line-height: 24px;
  609. letter-spacing: 0px;
  610. text-align: left;
  611. margin-bottom: 24rpx;
  612. }
  613. .business-tags {
  614. gap: 12rpx;
  615. .business-tag {
  616. background: transparent;
  617. border: 1px solid rgba(153, 196, 250, 1);
  618. border-radius: 12rpx;
  619. padding: 6rpx 12rpx;
  620. color: rgba(40, 107, 229, 1);
  621. font-family: DM Sans;
  622. font-size: 20rpx;
  623. font-weight: 400;
  624. line-height: 16px;
  625. letter-spacing: 0px;
  626. text-align: center;
  627. }
  628. }
  629. }
  630. }
  631. .talent-section {
  632. width: 100%;
  633. margin-top: 30rpx;
  634. .talent-box {
  635. width: 686rpx;
  636. background: #ffffff;
  637. border-radius: 24rpx;
  638. .talent-title {
  639. color: rgba(34, 37, 42, 1);
  640. font-family: DM Sans;
  641. font-size: 16px;
  642. font-weight: 400;
  643. line-height: 24px;
  644. letter-spacing: 0px;
  645. text-align: left;
  646. margin-bottom: 24rpx;
  647. }
  648. .talent-tags {
  649. gap: 12rpx;
  650. .talent-tag {
  651. background: rgba(153, 153, 153, 0.1);
  652. border-radius: 12rpx;
  653. padding: 6rpx 12rpx;
  654. color: rgba(102, 102, 102, 1);
  655. font-family: DM Sans;
  656. font-size: 20rpx;
  657. font-weight: 400;
  658. line-height: 16px;
  659. letter-spacing: 0px;
  660. text-align: center;
  661. }
  662. }
  663. }
  664. }
  665. .hr-section {
  666. width: 100%;
  667. .hr-box {
  668. width: 686rpx;
  669. background: #ffffff;
  670. border-radius: 24rpx;
  671. .hr-header {
  672. padding: 50rpx 0 0 0;
  673. margin-bottom: 30rpx;
  674. .hr-title {
  675. color: rgba(34, 37, 42, 1);
  676. font-family: DM Sans;
  677. font-size: 16px;
  678. font-weight: 400;
  679. line-height: 24px;
  680. letter-spacing: 0px;
  681. text-align: left;
  682. }
  683. .view-all-jobs {
  684. text {
  685. color: rgba(255, 102, 0, 1);
  686. font-family: DM Sans;
  687. font-size: 12px;
  688. font-weight: 400;
  689. line-height: 16px;
  690. letter-spacing: 0px;
  691. text-align: right;
  692. }
  693. }
  694. }
  695. .hr-list {
  696. padding: 0 0 30rpx 0;
  697. .hr-item {
  698. flex: 1;
  699. .hr-content {
  700. align-items: center;
  701. .hr-avatar-container {
  702. position: relative;
  703. margin-right: 16rpx;
  704. .hr-avatar {
  705. width: 80rpx;
  706. height: 80rpx;
  707. border-radius: 50%;
  708. display: flex;
  709. align-items: center;
  710. justify-content: center;
  711. position: relative;
  712. .avatar-text {
  713. color: #ffffff;
  714. font-size: 32rpx;
  715. font-weight: 600;
  716. }
  717. }
  718. .online-dot {
  719. position: absolute;
  720. bottom: 4rpx;
  721. right: 4rpx;
  722. width: 20rpx;
  723. height: 20rpx;
  724. background-color: #7ED321;
  725. border-radius: 50%;
  726. border: 3rpx solid #ffffff;
  727. }
  728. }
  729. .hr-text {
  730. .hr-name {
  731. color: rgba(34, 37, 42, 1);
  732. font-family: DM Sans;
  733. font-size: 28rpx;
  734. font-weight: 500;
  735. line-height: 20px;
  736. margin-bottom: 4rpx;
  737. text-align: left;
  738. }
  739. .hr-position {
  740. color: rgba(153, 153, 153, 1);
  741. font-family: DM Sans;
  742. font-size: 24rpx;
  743. font-weight: 400;
  744. line-height: 16px;
  745. text-align: left;
  746. }
  747. }
  748. }
  749. }
  750. }
  751. }
  752. }
  753. .gsInfo {
  754. width: 100%;
  755. margin-top: 20rpx;
  756. .gsInfo-box {
  757. width: 686rpx;
  758. height: 100%;
  759. border-radius: 24rpx;
  760. .gsInfo-box-c {
  761. width: 100%;
  762. height: 100%;
  763. padding-top: 30rpx;
  764. padding-bottom: 30rpx;
  765. }
  766. .gsInfo-box-c-title {
  767. color: rgba(34, 37, 42, 1);
  768. font-family: DM Sans;
  769. font-size: 16px;
  770. font-weight: 400;
  771. line-height: 24px;
  772. letter-spacing: 0px;
  773. text-align: left;
  774. margin-bottom: 10rpx;
  775. }
  776. .gsInfo-box-c-item {
  777. color: rgba(153, 153, 153, 1);
  778. font-family: DM Sans;
  779. font-size: 12px;
  780. font-weight: 400;
  781. line-height: 16px;
  782. letter-spacing: 0%;
  783. text-align: left;
  784. margin-bottom: 10rpx;
  785. }
  786. }
  787. }
  788. </style>