Procházet zdrojové kódy

Merge branch 'dev' of https://git.citupro.com/zhengnaiwen_citu/menduner into dev

lifanagju_citu před 8 měsíci
rodič
revize
eb63d06e7a

+ 15 - 12
src/components/Enterprise/hotPromoted.vue

@@ -1,13 +1,13 @@
 <template>
   <div class="hot-box">
-    <div class="sub-li" v-for="(item, index) in list" :key="index" >
+    <div class="sub-li" v-for="(item, index) in list" :key="index">
       <div v-if="item">
         <!-- 公司信息 -->
         <div class="company-info-top align-center" @click="handleClickEnterprise(item)">
           <div class="float-left">
             <v-img :src="item?.enterprise.logoUrl || 'https://minio.citupro.com/dev/menduner/company-avatar.png'" alt="" width="77" height="77" style="border-radius: 4px;"/>
           </div>
-          <div class="company-info">
+          <div class="company-info cursor-pointer">
             <h3>{{ item.enterprise.anotherName }}</h3>
             <p>
               {{ item?.enterprise.financingName }}
@@ -23,10 +23,10 @@
         </div>
         <!-- 职位列表 -->
         <ul class="company-job-list">
-          <li class="company-job-item" v-for="(k, i) in item.jobList" :key="i">
+          <li class="company-job-item" v-for="(k, i) in item.jobList" :key="i" :class="{'company-job-item-hover': k.active}" @mouseenter="k.active = true" @mouseleave="k.active = false" @click="handleClickPosition(k)">
             <div class="job-info" @mouseenter="k.active = true" @mouseleave="k.active = false" @click="handleClickPosition(k)">
               <div class="mb-2 d-flex">
-                <p :class="['name', {'default-active': k.active }]">{{ k.name }}</p>
+                <p :class="['name', 'cursor-pointer', {'default-active': k.active }]">{{ k.name }}</p>
                 <span class="salary">{{ k.payFrom }}-{{ k.payTo }}/{{ k.payName }}</span>
               </div>
               <div style="height: 24px; overflow: hidden; color: #808080;">
@@ -39,8 +39,9 @@
             </div>
           </li>
         </ul>
-        <div class="moreBtn d-flex align-center justify-center" @click="handleMoreEnterprise(item)">
-          {{ $t('position.moreBtn') }}
+        <div class="moreBtn d-flex align-center justify-center" @click="handleMoreEnterprise(item)" @mouseenter="item.active = true" @mouseleave="item.active = false">
+          <span :style="{'text-decoration': item.active ? 'underline' : 'none'}">{{ $t('position.moreBtn') }}</span>
+          <v-icon>mdi-menu-right</v-icon>
         </div>
       </div>
     </div>
@@ -105,7 +106,6 @@ const handleMoreEnterprise = (item) => {
   overflow: hidden;
   transition: all .2s linear;
   background-color: #fff;
-  cursor: pointer;
   box-shadow: 0 2px 20px 0 rgba(37, 39, 48, .2);
   &:nth-child(3n) {
     margin-right: 0;
@@ -139,6 +139,9 @@ const handleMoreEnterprise = (item) => {
   overflow: hidden;
   white-space: nowrap;
   text-overflow: ellipsis;
+  &:hover {
+    color: var(--v-primary-base);
+  }
 }
 .company-info p {
   height: 18px;
@@ -148,10 +151,7 @@ const handleMoreEnterprise = (item) => {
   line-height: 18px;
 }
 .company-job-list {
-  display: block;
   padding: 4px 20px 12px;
-  margin-right: -16px;
-  overflow: hidden;
 }
 ul li {
   list-style: none
@@ -159,9 +159,11 @@ ul li {
 .company-job-item {
   display: block;
   height: auto;
-  width: 344px;
   padding: 12px 0;
   margin: 0;
+  &-hover {
+    background-color: #f8f8f8;
+  }
 }
 .salary {
   font-size: 16px;
@@ -189,8 +191,9 @@ ul li {
   position: absolute;
   width: 100%;
   bottom: 0;
-  height: 37px;
+  height: 47px;
   color: #fff;
+  cursor: pointer;
   font-size: 14px;
   background: linear-gradient(to right, #12ebb0, #427daa);
 }

+ 1 - 1
src/views/recruit/personal/home/components/popularEnterprises.vue

@@ -28,7 +28,7 @@ const getHotEnterpriseList = async () => {
     let jobList = []
     const enterprise = dealDictObjData({}, e.enterprise)
     if (e.jobList && e.jobList.length) jobList = dealDictArrayData([], e.jobList).slice(0, 3)
-    return { enterprise, jobList }
+    return { enterprise, jobList, active: false }
   })
 }
 getHotEnterpriseList()