Bläddra i källkod

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

lifanagju_citu 10 månader sedan
förälder
incheckning
1451728725
100 ändrade filer med 294 tillägg och 287 borttagningar
  1. 9 9
      src/components/AreaSelect/index.vue
  2. 1 1
      src/components/CtPagination/index.vue
  3. 1 1
      src/components/CtSearch/index.vue
  4. 1 1
      src/components/Empty/index.vue
  5. 2 2
      src/components/Enterprise/components/introduction.vue
  6. 6 6
      src/components/Enterprise/components/positions.vue
  7. 7 7
      src/components/Enterprise/details.vue
  8. 5 5
      src/components/Enterprise/hotPromoted.vue
  9. 2 2
      src/components/Enterprise/info.vue
  10. 2 2
      src/components/Position/item.vue
  11. 4 4
      src/components/Position/longCompany.vue
  12. 4 4
      src/components/Position/longStrip.vue
  13. 2 2
      src/components/Position/similarPositions.vue
  14. 4 4
      src/components/PositionLongStrip/item.vue
  15. 2 2
      src/components/industryTypeCard/index.vue
  16. 4 4
      src/components/jobTypeCard/index.vue
  17. 1 1
      src/layout/company/navBar.vue
  18. 2 2
      src/layout/company/slider.vue
  19. 2 2
      src/layout/enterprise.vue
  20. 8 8
      src/layout/personal/navBar.vue
  21. 2 2
      src/layout/personal/slider.vue
  22. 33 33
      src/router/modules/personal.js
  23. 4 0
      src/router/modules/recruit.js
  24. 1 1
      src/router/modules/remaining.js
  25. 13 3
      src/styles/index.css
  26. 1 1
      src/styles/index.min.css
  27. 13 3
      src/styles/index.scss
  28. 4 4
      src/styles/protocol/index.css
  29. 1 1
      src/styles/protocol/index.min.css
  30. 3 3
      src/styles/protocol/index.scss
  31. 5 5
      src/styles/recruit/company.css
  32. 1 1
      src/styles/recruit/company.min.css
  33. 5 5
      src/styles/recruit/company.scss
  34. 0 13
      src/views/Home/enterprise.vue
  35. 0 12
      src/views/Home/index.vue
  36. 14 7
      src/views/integral/components/integralShow.vue
  37. 0 0
      src/views/integral/integralRules/components/expiredOfPoints.vue
  38. 0 0
      src/views/integral/integralRules/components/howToEarnPoints.vue
  39. 0 0
      src/views/integral/integralRules/components/pointsViolation.vue
  40. 0 0
      src/views/integral/integralRules/components/transferOfPoints.vue
  41. 0 0
      src/views/integral/integralRules/components/whatIsPoints.vue
  42. 3 3
      src/views/integral/integralRules/index.vue
  43. 0 0
      src/views/integral/pointsManagement/components/exchange.vue
  44. 0 0
      src/views/integral/pointsManagement/components/exchangeRecords.vue
  45. 0 0
      src/views/integral/pointsManagement/components/exchangeRecordsTable.vue
  46. 0 0
      src/views/integral/pointsManagement/components/integralTable.vue
  47. 1 1
      src/views/integral/pointsManagement/index.vue
  48. 0 0
      src/views/integral/pointsManagement/pointsDetails.vue
  49. 0 0
      src/views/integral/pointsManagement/pointsMall.vue
  50. 1 1
      src/views/login/index.vue
  51. 4 4
      src/views/mall/index.vue
  52. 3 3
      src/views/mall/purchasePackage/components/packagesDetail.vue
  53. 3 3
      src/views/mall/purchasePackage/index.vue
  54. 2 2
      src/views/publicRecruitment/components/bountyDisplay.vue
  55. 0 0
      src/views/publicRecruitment/components/integralTable.vue
  56. 0 0
      src/views/publicRecruitment/components/table.vue
  57. 0 0
      src/views/publicRecruitment/index.vue
  58. 3 3
      src/views/publicRecruitment/myRecommendation.vue
  59. 2 2
      src/views/publicRecruitment/myRegistration.vue
  60. 2 2
      src/views/recruit/enterprise/enterpriseCenter/components/introduction.vue
  61. 6 6
      src/views/recruit/enterprise/enterpriseCenter/components/positions.vue
  62. 2 2
      src/views/recruit/enterprise/enterpriseCenter/index.vue
  63. 1 1
      src/views/recruit/enterprise/informationManagement/informationSettingsComponents/welfareLabel.vue
  64. 1 1
      src/views/recruit/enterprise/informationSetting/index.vue
  65. 7 7
      src/views/recruit/enterprise/interview/index.vue
  66. 1 1
      src/views/recruit/enterprise/memberCenter/myPoints/index.vue
  67. 1 1
      src/views/recruit/enterprise/personnelManagement/components/screen.vue
  68. 1 1
      src/views/recruit/enterprise/positionManagement/components/add.vue
  69. 2 2
      src/views/recruit/enterprise/positionManagement/components/baseInfo.vue
  70. 6 6
      src/views/recruit/enterprise/positionManagement/components/details.vue
  71. 5 5
      src/views/recruit/enterprise/positionManagement/components/item.vue
  72. 3 3
      src/views/recruit/enterprise/purchasePackage/components/packagesDetail.vue
  73. 3 3
      src/views/recruit/enterprise/purchasePackage/index.vue
  74. 1 1
      src/views/recruit/enterprise/register/inReview.vue
  75. 3 3
      src/views/recruit/enterprise/register/joiningEnterprise.vue
  76. 9 9
      src/views/recruit/enterprise/register/register.vue
  77. 2 2
      src/views/recruit/enterprise/talentPool/components/details/baseInfo.vue
  78. 1 1
      src/views/recruit/enterprise/talentPool/components/details/jobIntention.vue
  79. 1 1
      src/views/recruit/enterprise/talentPool/components/details/projectExperience.vue
  80. 2 2
      src/views/recruit/enterprise/talentPool/components/details/vocationalSkills.vue
  81. 3 3
      src/views/recruit/enterprise/talentPool/components/details/workExperience.vue
  82. 2 2
      src/views/recruit/enterprise/talentPool/components/filter.vue
  83. 4 4
      src/views/recruit/enterprise/talentPool/index.vue
  84. 4 4
      src/views/recruit/personal/PersonalCenter/components/communication.vue
  85. 4 4
      src/views/recruit/personal/PersonalCenter/components/interestedMe.vue
  86. 4 4
      src/views/recruit/personal/PersonalCenter/components/seenMe.vue
  87. 4 4
      src/views/recruit/personal/PersonalCenter/dynamic/left.vue
  88. 3 3
      src/views/recruit/personal/PersonalCenter/dynamic/right.vue
  89. 0 0
      src/views/recruit/personal/accountSettings/dynamic/accountBinding.vue
  90. 1 1
      src/views/recruit/personal/accountSettings/dynamic/editPassword.vue
  91. 1 1
      src/views/recruit/personal/accountSettings/dynamic/privacySettings.vue
  92. 0 0
      src/views/recruit/personal/accountSettings/dynamic/realAuthentication.vue
  93. 5 5
      src/views/recruit/personal/accountSettings/index.vue
  94. 1 1
      src/views/recruit/personal/company/index.vue
  95. 0 0
      src/views/recruit/personal/home/components/headCarousel.vue
  96. 5 5
      src/views/recruit/personal/home/components/homeJobTypeCard/index.vue
  97. 0 0
      src/views/recruit/personal/home/components/hotJobs.vue
  98. 0 0
      src/views/recruit/personal/home/components/hotPromotedPositions.vue
  99. 0 0
      src/views/recruit/personal/home/components/popularEnterprises.vue
  100. 2 1
      src/views/recruit/personal/home/index.vue

+ 9 - 9
src/components/AreaSelect/index.vue

@@ -121,7 +121,7 @@ const handleMouseLeave = () => {
       cursor: pointer;
       &:hover {
         color: var(--v-primary-base);
-        background-color: #f8f8f8;
+        background-color: var(--color-f8);
       }
       .categoryName { font-size: 14px; font-family: 微软雅黑; }
     }
@@ -135,8 +135,8 @@ const handleMouseLeave = () => {
     padding: 0 16px;
     overflow-y: auto;
     .categoryName { font-size: 16px; line-height: 28px; margin-top: 6px;}
-    .categoryName2 { font-size: 14px; color: #666666; width: 110px; margin-right: 4px;}
-    .jobItem { font-size: 14px; color: #333333; }
+    .categoryName2 { font-size: 14px; color: var(--color-666); width: 110px; margin-right: 4px;}
+    .jobItem { font-size: 14px; color: var(--color-333); }
     .rowItem {
       padding: 8px 0;
     }
@@ -149,7 +149,7 @@ const handleMouseLeave = () => {
         margin: 4px 28px 2px 0;
         float: left;
         cursor: pointer;
-        color: #333333;
+        color: var(--color-333);
         &:hover {
           color: var(--v-primary-base);
         }
@@ -194,11 +194,11 @@ const handleMouseLeave = () => {
           font-size: 14px;
           margin-left: 12px;
           cursor: pointer;
-          color: #666666;
+          color: var(--color-666);
           font-family: 微软雅黑; 
           &:hover {
             color: var(--v-primary-base);
-            // background-color: #f8f8f8;
+            // background-color: var(--color-f8);
           }
         }
       }
@@ -212,8 +212,8 @@ const handleMouseLeave = () => {
     padding: 0 16px;
     overflow-y: auto;
     .categoryName { font-size: 16px; line-height: 28px; margin-top: 6px; color: var(--v-primary-base)}
-    .categoryName2 { font-size: 14px; color: #666666; width: 110px; margin-right: 4px;}
-    .jobItem { font-size: 14px; color: #333333; }
+    .categoryName2 { font-size: 14px; color: var(--color-666); width: 110px; margin-right: 4px;}
+    .jobItem { font-size: 14px; color: var(--color-333); }
     .rowItem {
       padding: 8px 0;
     }
@@ -226,7 +226,7 @@ const handleMouseLeave = () => {
         margin: 4px 28px 2px 0;
         float: left;
         cursor: pointer;
-        color: #333333;
+        color: var(--color-333);
         &:hover {
           color: var(--v-primary-base);
         }

+ 1 - 1
src/components/CtPagination/index.vue

@@ -10,7 +10,7 @@
       color="primary"
       size="small"
     ></v-pagination>
-    <!-- <span style="color: #666;">共{{ props.total }}条数据</span>
+    <!-- <span style="color: var(--color-666);">共{{ props.total }}条数据</span>
     <div class="search px-3">
       <v-text-field
         v-model="currentJump"

+ 1 - 1
src/components/CtSearch/index.vue

@@ -156,7 +156,7 @@ const handleSearch = () => {
 }
 .hover {
   color: var(--v-primary-base);
-  background-color: #f8f8f8;
+  background-color: var(--color-f8);
 }
 .list {
   height: 242px;

+ 1 - 1
src/components/Empty/index.vue

@@ -31,7 +31,7 @@ defineProps({
 .message {
   font-weight: 400;
   font-size: 14px;
-  color: #999;
+  color: var(--color-999);
   line-height: 20px;
 }
 </style>

+ 2 - 2
src/components/Enterprise/components/introduction.vue

@@ -7,7 +7,7 @@
       <h4>公司地址</h4>
       <div class="mt-1">
         <v-icon size="25" color="primary">mdi-map-marker</v-icon>
-        <span style="color: #666;font-size: 15px;">{{ props.info.business.address }}</span>
+        <span style="color: var(--color-666);font-size: 15px;">{{ props.info.business.address }}</span>
       </div>
     </div>
     <v-divider class="my-3"></v-divider>
@@ -50,7 +50,7 @@ const handleClick = (index) => {
   white-space: pre-wrap;
   word-break: break-all;
   line-height: 28px;
-  color: #333;
+  color: var(--color-333);
   font-size: 15px;
   text-align: justify;
   letter-spacing: 0;

+ 6 - 6
src/components/Enterprise/components/positions.vue

@@ -47,7 +47,7 @@
           <p v-else :class="['name', {'default-active': val.active }]">{{ val.job.name }}</p>
           <div style="line-height: 40px;">
             <span v-for="k in desc" :key="k.mdi" class="mr-5">
-              <v-icon color="#666" size="15">{{ k.mdi }}</v-icon>
+              <v-icon color="var(--color-666)" size="15">{{ k.mdi }}</v-icon>
               <span class="ml-1 tag-text">{{ val.job[k.value] }}</span>
             </span>
           </div>
@@ -224,23 +224,23 @@ const desc = [
 .salary {
   font-size: 16px;
   font-weight: 700;
-  color: #fe574a;
+  color: var(--v-error-base);
   line-height: 22px;
   flex: none;
 }
 .tag-text {
-  color: #222;
+  color: var(--color-222);
   font-size: 14px;
 }
 .update-time {
-  color: #666;
+  color: var(--color-666);
   font-size: 14px;
   line-height: 40px;
 }
 .account-info {
   line-height: 52px;
   .account-label {
-    color: #666;
+    color: var(--color-666);
     font-size: 14px;
     font-weight: 600;
     margin: 0 10px;
@@ -256,7 +256,7 @@ const desc = [
   display: inline-block;
   margin-right: 20px;
   font-size: 15px;
-  color: #666;
+  color: var(--color-666);
   cursor: pointer;
   &:hover {
     color: var(--v-primary-base);

+ 7 - 7
src/components/Enterprise/details.vue

@@ -40,7 +40,7 @@
           <div class="content-right">
             <div class="welfare">
               <h4>工作时间及福利</h4>
-              <div class="my-3" style="color: #777;font-size: 14px;">
+              <div class="my-3" style="color: var(--color-666);font-size: 14px;">
                 <v-icon size="17" color="#ccc" class="mr-2">mdi-clock</v-icon>{{ info.enterprise.workTime }}
               </div>
               <div class="welfare-tags">
@@ -196,14 +196,14 @@ const recruitmentSpecialist = [
 .contact-info {
   font-size: 15px;
   font-weight: 500;
-  color: #222;
+  color: var(--color-222);
   line-height: 21px;
   margin-top: 8px;
 }
 .tools-box {
   height: 80px;
   width: 80px;
-  background-color: #d5e6e8;
+  background-color: var(--color-d5e6e8);
   border-radius: 5px;
 }
 .tools-box-number {
@@ -216,7 +216,7 @@ const recruitmentSpecialist = [
   font-size: 14px;
 }
 .welfare {
-  background-color: #f3f3f3;
+  background-color: var(--color-f3);
   border-radius: 8px;
   padding: 12px;
 }
@@ -241,7 +241,7 @@ const recruitmentSpecialist = [
 }
 .business-item {
   font-size: 14px;
-  color: #777;
+  color: var(--color-666);
   font-weight: 600;
 }
 .business-value {
@@ -251,11 +251,11 @@ const recruitmentSpecialist = [
 }
 .business-source {
   font-size: 14px;
-  color: #777;
+  color: var(--color-666);
 }
 .desc {
   width: 180px;
-  color: #666;
+  color: var(--color-666);
   font-weight: 500;
   font-size: 12px;
 }

+ 5 - 5
src/components/Enterprise/hotPromoted.vue

@@ -22,7 +22,7 @@
                 <span class="salary">{{ k.payFrom }}-{{ k.payTo }}/{{ k.payName }}</span>
               </div>
               <div style="height: 24px; overflow: hidden;">
-                <v-chip size="x-small" label class="mr-1" color="#666" v-for="j in desc" :key="j">{{ k[j.value] }}</v-chip>
+                <v-chip size="x-small" label class="mr-1" color="var(--color-666)" v-for="j in desc" :key="j">{{ k[j.value] }}</v-chip>
               </div>
             </div>
           </li>
@@ -115,7 +115,7 @@ const handleMoreEnterprise = (item) => {
   height: 22px;
   font-size: 16px;
   font-weight: 400;
-  color: #222;
+  color: var(--color-222);
   line-height: 22px;
   margin: 0 0 4px 0;
   padding: 0;
@@ -128,7 +128,7 @@ const handleMoreEnterprise = (item) => {
   height: 18px;
   font-size: 13px;
   font-weight: 400;
-  color: #999;
+  color: var(--color-999);
   line-height: 18px;
 }
 .company-job-list {
@@ -151,7 +151,7 @@ ul li {
   font-size: 16px;
   float: right;
   font-weight: 700;
-  color: #fe574a;
+  color: var(--v-error-base);
   line-height: 22px;
   max-width: none;
   text-align: right;
@@ -162,7 +162,7 @@ ul li {
   max-width: 200px;
   line-height: 22px;
   font-weight: 500;
-  color: #222;
+  color: var(--color-222);
   margin-right: 8px;
   overflow: hidden;
   text-overflow: ellipsis;

+ 2 - 2
src/components/Enterprise/info.vue

@@ -11,7 +11,7 @@
     </div>
     <div class="mt-3 border-bottom-dashed" style="font-size: 14px;">
       <div v-for="val in list" :key="val.icon" class="d-flex my-2">
-        <v-icon size="20" color="#666">{{ val.icon }}</v-icon>
+        <v-icon size="20" color="var(--color-666)">{{ val.icon }}</v-icon>
         <div class="info-address ml-4">{{ obj[val.label] }}</div>
       </div>
     </div>
@@ -54,7 +54,7 @@ const handleEnterprise = (val) => {
 <style lang="scss" scoped>
 .info-box {
   height: 260px;
-  background-color: #f3f3f3;
+  background-color: var(--color-f3);
   border-radius: 8px;
   padding: 20px 15px;
 }

Filskillnaden har hållts tillbaka eftersom den är för stor
+ 2 - 2
src/components/Position/item.vue


+ 4 - 4
src/components/Position/longCompany.vue

@@ -72,7 +72,7 @@ const handleClickEnterprise = (item, key) => {
   height: 22px;
   font-size: 16px;
   font-weight: 400;
-  color: #222;
+  color: var(--color-222);
   line-height: 22px;
   margin: 0 0 4px 0;
   padding: 0;
@@ -85,7 +85,7 @@ const handleClickEnterprise = (item, key) => {
   height: 18px;
   font-size: 13px;
   font-weight: 400;
-  color: #999;
+  color: var(--color-999);
   line-height: 18px;
 }
 .company-info-bottom {
@@ -101,10 +101,10 @@ const handleClickEnterprise = (item, key) => {
     text-overflow: ellipsis;
     white-space: nowrap;
     font-size: 13px; 
-    color: #999;
+    color: var(--color-999);
   }
   .position {
-    color: #666;
+    color: var(--color-666);
     font-size: 14px;
     cursor: pointer;
     &:hover {

+ 4 - 4
src/components/Position/longStrip.vue

@@ -84,11 +84,11 @@ const handleCancel = async (item) => {
     .img-box {
       padding: 12px 24px;
       .name {
-        color: #222;
+        color: var(--color-222);
         font-weight: 400;
         font-size: 13px;
         .gray {
-          color: #666;
+          color: var(--color-666);
         }
       }
     }
@@ -113,7 +113,7 @@ const handleCancel = async (item) => {
       .job-name {
         height: 22px;
         line-height: 22px;
-        color: #222;
+        color: var(--color-222);
         margin-bottom: 12px;
       }
       .job-other {
@@ -127,7 +127,7 @@ const handleCancel = async (item) => {
       align-items: center
     }
     .interview-info {
-      color: #333;
+      color: var(--color-333);
       font-size: 15px;
     }
   }

+ 2 - 2
src/components/Position/similarPositions.vue

@@ -36,7 +36,7 @@ const handlePosition = (item) => {
 .position-box {
   // position: relative;
   // height: 430px;
-  background-color: #f3f3f3;
+  background-color: var(--color-f3);
   border-radius: 8px;
   padding: 20px 15px;
 }
@@ -73,7 +73,7 @@ const handlePosition = (item) => {
   white-space: nowrap;
   text-overflow: ellipsis;
   overflow: hidden;
-  color: #666;
+  color: var(--color-666);
   font-size: 13px;
   margin-left: 5px;
   &:hover {

+ 4 - 4
src/components/PositionLongStrip/item.vue

@@ -10,7 +10,7 @@
           <p class="salary ml-1">{{ item.job.payFrom }}-{{ item.job.payTo }}/{{ item.job.payName }}</p>
         </div>
         <div class="mt-2">
-          <v-chip size="x-small" label v-for="(j, i) in desc" :key="i" class="mr-1" color="#666" :prepend-icon="j.mdi">{{ item.job[j.value] }}</v-chip>
+          <v-chip size="x-small" label v-for="(j, i) in desc" :key="i" class="mr-1" color="var(--color-666)" :prepend-icon="j.mdi">{{ item.job[j.value] }}</v-chip>
         </div>
       </div>
       <!-- 公司 -->
@@ -110,9 +110,9 @@ const handleEnterprise = (item) => {
   height: 18px;
   font-size: 13px;
   font-weight: 400;
-  color: #999;
+  color: var(--color-999);
 }
-.textColor666 { color: #666; }
+.textColor666 { color: var(--color-666); }
 .positionItem {
   width: 884px;
   margin-bottom: 12px;
@@ -164,7 +164,7 @@ const handleEnterprise = (item) => {
 .salary {
   font-size: 16px;
   font-weight: 700;
-  color: #fe574a;
+  color: var(--v-error-base);
   line-height: 22px;
   flex: none;
 }

+ 2 - 2
src/components/industryTypeCard/index.vue

@@ -95,7 +95,7 @@ const handleClick = (val) => {
 <style lang="scss" scoped>
 .currentSelect {
   position: sticky;
-  background-color: #f2f4f7;
+  background-color: var(--color-f2f4f7);
 }
 .card { border-radius: 12px; }
 .rightCard {
@@ -107,7 +107,7 @@ const handleClick = (val) => {
   overflow-y: auto;
   // .categoryName { font-size: 16px; line-height: 28px; margin-top: 6px; color: var(--v-primary-base)}
   .categoryName2 { font-size: 14px; color: #000; width: 150px; margin-right: 4px;}
-  .jobItem { font-size: 14px; color: #333333; }
+  .jobItem { font-size: 14px; color: var(--color-333); }
   .active { color: var(--v-primary-base); font-weight: 700; }
   .rowItem {
     padding: 8px 0;

+ 4 - 4
src/components/jobTypeCard/index.vue

@@ -176,7 +176,7 @@ const handleMouseLeave = () => { // 鼠标移出
       cursor: pointer;
       &:hover {
         color: var(--v-primary-base);
-        background-color: #f8f8f8;
+        background-color: var(--color-f8);
       }
       .categoryName { font-size: 14px; font-family: 微软雅黑; }
     }
@@ -190,8 +190,8 @@ const handleMouseLeave = () => { // 鼠标移出
     padding: 0 16px;
     overflow-y: auto;
     .categoryName { font-size: 16px; line-height: 28px; margin-top: 6px;}
-    .categoryName2 { font-size: 14px; color: #666666; width: 110px; margin-right: 4px;}
-    .jobItem { font-size: 14px; color: #333333; }
+    .categoryName2 { font-size: 14px; color: var(--color-666); width: 110px; margin-right: 4px;}
+    .jobItem { font-size: 14px; color: var(--color-333); }
     .rowItem {
       padding: 8px 0;
     }
@@ -204,7 +204,7 @@ const handleMouseLeave = () => { // 鼠标移出
         margin: 4px 28px 2px 0;
         float: left;
         cursor: pointer;
-        color: #333333;
+        color: var(--color-333);
         &:hover {
           color: var(--v-primary-base);
         }

+ 1 - 1
src/layout/company/navBar.vue

@@ -141,7 +141,7 @@ const handleChangeLocale = (item) => {
   height: 50px;
   z-index: var(--zIndex-nav) !important;
   color: #fff;
-  background-color: #d5e6e8;
+  background-color: var(--color-d5e6e8);
   padding-left: 0px;
   height: 50px;
   font-size: 15px;

+ 2 - 2
src/layout/company/slider.vue

@@ -44,13 +44,13 @@ const handleClick = (index) => {
   text-align: center;
 }
 .icons {
-  color: #ccc;
+  color: var(--color-ccc);
   &:hover {
     color: var(--v-primary-base);
   }
 }
 .tip-text {
   font-size: 14px;
-  color: #222;
+  color: var(--color-222);
 }
 </style>

+ 2 - 2
src/layout/enterprise.vue

@@ -141,10 +141,10 @@ $top: 50px;
   border-left: 1px solid #eaecef;
 }
 .text {
-  color: #999;
+  color: var(--color-999);
   font-size: 14px;
   &.active {
-    color: #00897B;
+    color: var(--v-primary-base);
     cursor: pointer;
   }
 }

+ 8 - 8
src/layout/personal/navBar.vue

@@ -37,8 +37,8 @@
           
           <!-- 头像用户名 -->
           <div class="d-flex align-center" v-if="getToken()">
-            <a target="_blank" href="/purchasePackage" class="cursor-pointer mr-5" style="color: #FB8C00;">{{ $t('vipPackage.purchasePackage') }}</a>
-            <span class="cursor-pointer" @click="router.push({ path: '/personalTaskCenter' })">{{ $t('sys.signIn') }}</span>
+            <a target="_blank" href="/mall/purchasePackage" class="cursor-pointer mr-5" style="color: #FB8C00;">{{ $t('vipPackage.purchasePackage') }}</a>
+            <span class="cursor-pointer" @click="router.push({ path: '/recruit/personal/TaskCenter' })">{{ $t('sys.signIn') }}</span>
             <span class="cursor-pointer ml-5">{{ $t('sys.news') }}</span>
             <v-menu open-on-hover>
               <template v-slot:activator="{ props }">
@@ -90,7 +90,7 @@
       </div>
     </v-toolbar>
     <CtDialog :visible="show" title="请选择要切换的公司账号" :footer="true" widthType="2" @close="show = false" @submit="handleSubmit">
-      <!-- <div class="mb-3 text-center" style="color: #999;">
+      <!-- <div class="mb-3 text-center" style="color: var(--color-999);">
         <div class="mb-5">您还未加入或注册企业, 请选择您要操作的类型!</div>
         <v-btn class="half-button" size="small" color="primary" variant="tonal" @click="handleChange(0)">加入企业</v-btn>
         <v-btn class="half-button ml-5" size="small" color="primary" variant="tonal" @click="handleChange(1)">{{ $t('enterprise.registeringNewEnterprise') }}</v-btn>
@@ -171,7 +171,7 @@ const toEnterprise = async (enterpriseId) => {
 const getApplyInfo = async () => {
   const data = await getUserRegisterEnterpriseApply()
   const bool = data && Object.keys(data).length // 已经有数据说明已经申请过了
-  const path = bool ? '/enterprise/inReview' : '/enterprise/register'
+  const path = bool ? '/recruit/enterprise/register/inReview' : '/recruit/enterprise/register'
   router.push({ path })
 }
 
@@ -187,11 +187,11 @@ const handleLogout = async () => {
 
 const items = ref([
   { title: t('resume.onlineResume'), icon: 'mdi-list-box-outline', change: () => router.push({ path: '/recruit/personal/resume' }) },
-  { title: t('setting.accountSettings'), icon: 'mdi-cog-outline', change: () => router.push({ path: '/personalAccount/accountBinding' }) },
+  { title: t('setting.accountSettings'), icon: 'mdi-cog-outline', change: () => router.push({ path: '/recruit/personal/accountSettings/accountBinding' }) },
   { title: t('setting.switchToRecruit'), icon: 'mdi-swap-horizontal', change: changeLoginType },
-  { title: t('publicRecruitment.bountyRewards'), icon: 'mdi-google-circles-extended', change: () => router.push({ path: '/myPublicRecruitment' }) },
-  { title: t('points.pointsManagement'), icon: ' mdi-database-outline', change: () => router.push({ path: '/pointsManagement' }) },
-  { title: t('taskCenter.taskCenter'), icon: 'mdi-calendar-check-outline', change: () => router.push({ path: '/personalTaskCenter' }) },
+  { title: t('publicRecruitment.bountyRewards'), icon: 'mdi-google-circles-extended', change: () => router.push({ path: '/publicRecruitment' }) },
+  { title: t('points.pointsManagement'), icon: ' mdi-database-outline', change: () => router.push({ path: '/integral/pointsManagement' }) },
+  { title: t('taskCenter.taskCenter'), icon: 'mdi-calendar-check-outline', change: () => router.push({ path: '/recruit/personal/TaskCenter' }) },
   { title: t('setting.logOut'), icon: 'mdi-logout', change: handleLogout }
 ])
 

+ 2 - 2
src/layout/personal/slider.vue

@@ -49,13 +49,13 @@ const handleClick = (item, index) => {
   text-align: center;
 }
 .icons {
-  color: #ccc;
+  color: var(--color-ccc);
   &:hover {
     color: var(--v-primary-base);
   }
 }
 .tip-text {
   font-size: 14px;
-  color: #222;
+  color: var(--color-222);
 }
 </style>

+ 33 - 33
src/router/modules/personal.js

@@ -3,41 +3,41 @@
 import Layout from '@/layout'
 const personal = [
   {
-    path: '/personalAccount',
+    path: '/recruit/personal/accountSettings',
     component: Layout,
     name: 'personalAccount',
     children: [
       {
-        path: '/personalAccount',
-        component: () => import('@/views/Home/personal/account/index'),
+        path: '/recruit/personal/accountSettings',
+        component: () => import('@/views/recruit/personal/accountSettings/index'),
         meta: {
           title: '账号设置'
         },
         children: [
           {
-            path: '/personalAccount/editPassword',
-            component: () => import('@/views/Home/personal/account/dynamic/editPassword'),
+            path: '/recruit/personal/accountSettings/editPassword',
+            component: () => import('@/views/recruit/personal/accountSettings/dynamic/editPassword'),
             meta: {
               title: '修改密码'
             }
           },
           {
-            path: '/personalAccount/accountBinding',
-            component: () => import('@/views/Home/personal/account/dynamic/accountBinding'),
+            path: '/recruit/personal/accountSettings/accountBinding',
+            component: () => import('@/views/recruit/personal/accountSettings/dynamic/accountBinding'),
             meta: {
               title: '账号加入'
             }
           },
           {
-            path: '/personalAccount/realAuthentication',
-            component: () => import('@/views/Home/personal/account/dynamic/realAuthentication'),
+            path: '/recruit/personal/accountSettings/realAuthentication',
+            component: () => import('@/views/recruit/personal/accountSettings/dynamic/realAuthentication'),
             meta: {
               title: '实名认证'
             }
           },
           {
-            path: '/personalAccount/privacySettings',
-            component: () => import('@/views/Home/personal/account/dynamic/privacySettings'),
+            path: '/recruit/personal/accountSettings/privacySettings',
+            component: () => import('@/views/recruit/personal/accountSettings/dynamic/privacySettings'),
             meta: {
               title: '隐私设置'
             }
@@ -75,27 +75,27 @@ const personal = [
     ]
   },
   {
-    path: '/enterprise/register',
+    path: '/recruit/enterprise/register',
     component: Layout,
     name: 'enterpriseRegister',
     children: [
       {
-        path: '/enterprise/register',
-        component: () => import('@/views/personal/components/register'),
+        path: '/recruit/enterprise/register',
+        component: () => import('@/views/recruit/enterprise/register/register.vue'),
         meta: {
           title: '注册新企业'
         },
       },
       {
-        path: '/enterprise/joiningEnterprise',
-        component: () => import('@/views/personal/components/joiningEnterprise'),
+        path: '/recruit/enterprise/register/joiningEnterprise',
+        component: () => import('@/views/recruit/enterprise/register/joiningEnterprise'),
         meta: {
           title: '加入企业'
         }
       },
       {
-        path: '/enterprise/inReview',
-        component: () => import('@/views/personal/components/inReview.vue'),
+        path: '/recruit/enterprise/register/inReview',
+        component: () => import('@/views/recruit/enterprise/register/inReview.vue'),
         meta: {
           title: '申请信息'
         }
@@ -103,7 +103,7 @@ const personal = [
     ]
   },
   {
-    path: '/myPublicRecruitment',
+    path: '/publicRecruitment',
     component: Layout,
     name: 'myPublicRecruitment',
     meta: {
@@ -111,8 +111,8 @@ const personal = [
     },
     children: [
       {
-        path: '/myPublicRecruitment',
-        component: () => import('@/views/personal/myPublicRecruitment/index'),
+        path: '/publicRecruitment',
+        component: () => import('@/views/publicRecruitment/index'),
         meta: {
           title: '赏金奖励'
         },
@@ -120,7 +120,7 @@ const personal = [
     ]
   },
   {
-    path: '/pointsManagement',
+    path: '/integral/pointsManagement',
     component: Layout,
     name: 'personalPointsManagement',
     meta: {
@@ -128,8 +128,8 @@ const personal = [
     },
     children: [
       {
-        path: '/pointsManagement',
-        component: () => import('@/views/personal/pointsManagement/index'),
+        path: '/integral/pointsManagement',
+        component: () => import('@/views/integral/pointsManagement/index'),
         meta: {
           title: '积分管理'
         },
@@ -137,7 +137,7 @@ const personal = [
     ]
   },
   {
-    path: '/personalTaskCenter',
+    path: '/recruit/personal/TaskCenter',
     component: Layout,
     name: 'personalTaskCenter',
     meta: {
@@ -145,8 +145,8 @@ const personal = [
     },
     children: [
       {
-        path: '/personalTaskCenter',
-        component: () => import('@/views/personal/taskCenter/index'),
+        path: '/recruit/personal/TaskCenter',
+        component: () => import('@/views/recruit/personal/taskCenter/index'),
         meta: {
           title: '任务中心'
         },
@@ -154,7 +154,7 @@ const personal = [
     ]
   },
   {
-    path: '/purchasePackage',
+    path: '/mall/purchasePackage',
     component: Layout,
     name: 'personalPurchasePackage',
     meta: {
@@ -162,8 +162,8 @@ const personal = [
     },
     children: [
       {
-        path: '/purchasePackage',
-        component: () => import('@/views/personal/purchasePackage/index'),
+        path: '/mall/purchasePackage',
+        component: () => import('@/views/mall/purchasePackage/index'),
         meta: {
           title: '购买套餐'
         },
@@ -171,7 +171,7 @@ const personal = [
     ]
   },
   {
-    path: '/personalIntegralRules',
+    path: '/integral/personalIntegralRules',
     component: Layout,
     name: 'personalIntegralRules',
     meta: {
@@ -179,8 +179,8 @@ const personal = [
     },
     children: [
       {
-        path: '/personalIntegralRules',
-        component: () => import('@/views/personal/integralRules/index'),
+        path: '/integral/personalIntegralRules',
+        component: () => import('@/views/integral/integralRules/index'),
         meta: {
           title: '积分规则'
         },

+ 4 - 0
src/router/modules/recruit.js

@@ -4,6 +4,10 @@ import Layout from '@/layout'
 const recruit = [
   {
     path: '/recruit',
+    redirect: '/home'
+  },
+  {
+    path: '/recruit/personal/position',
     component: Layout,
     name: 'recruit',
     children: [

+ 1 - 1
src/router/modules/remaining.js

@@ -64,7 +64,7 @@ const remainingRouter = [
       { path: '/personal', redirect: '/home' }, 
       {
         path: '/home',
-        component: () => import('@/views/Home/index'),
+        component: () => import('@/views/recruit/personal/home'),
         meta: {
           title: '首页'
         }

+ 13 - 3
src/styles/index.css

@@ -7,7 +7,17 @@
   --v-primary-lighten2: #4DB6AC;
   --v-primary-lighten3: #80CBC4;
   --v-primary-lighten4: #B2DFDB;
-  --default-text: #666;
+  --color-222: #222;
+  --color-333: #333;
+  --color-666: #666;
+  --color-777: #777;
+  --color-999: #999;
+  --color-ccc: #ccc;
+  --color-f3: #f3f3f3;
+  --color-f2f4f742: #f2f4f742;
+  --color-f8: #f8f8f8;
+  --color-f2f4f7: #f2f4f7;
+  --color-d5e6e8: #d5e6e8;
   --zIndex-breadcrumbs: 999;
 }
 
@@ -38,7 +48,7 @@
 }
 
 .border-bottom-dashed {
-  border-bottom: 1px dashed #ccc;
+  border-bottom: 1px dashed var(--color-ccc);
 }
 
 .white-bgc {
@@ -82,7 +92,7 @@
 }
 
 .resumeNoDataText {
-  color: #666;
+  color: var(--color-666);
   font-size: 14px;
 }
 

+ 1 - 1
src/styles/index.min.css

@@ -1 +1 @@
-:root{--zIndex-dialog:9999;--default-bgc:#f2f4f7;--v-primary-base:#00897B;--v-error-base:#fe574a;--v-primary-lighten1:#26A69A;--v-primary-lighten2:#4DB6AC;--v-primary-lighten3:#80CBC4;--v-primary-lighten4:#B2DFDB;--default-text:#666;--zIndex-breadcrumbs:999}.buttons{height:36px;width:224px}.half-button{height:36px;width:88px}.default-width{width:1184px;min-width:1184px;max-width:1184px;margin:0 auto}.defaultLink{color:#008978;cursor:pointer}.default-active{color:var(--v-primary-base) !important}.border-bottom-dashed{border-bottom:1px dashed #ccc}.white-bgc{background-color:#fff}.ellipsis{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.vline{display:inline-block;width:1px;height:10px;vertical-align:middle;background-color:#e0e0e0;margin:0 10px}.resume-box{border-radius:5px;padding:20px 30px;background-color:#fff}.resume-header{display:flex;justify-content:space-between;align-items:center;height:36px}.resume-title{font-weight:700;font-size:18px;border-left:5px solid #00897B;padding-left:12px;line-height:17px}.resumeNoDataText{color:#666;font-size:14px}.card-box{width:100%;height:100%}
+:root{--zIndex-dialog:9999;--default-bgc:#f2f4f7;--v-primary-base:#00897B;--v-error-base:#fe574a;--v-primary-lighten1:#26A69A;--v-primary-lighten2:#4DB6AC;--v-primary-lighten3:#80CBC4;--v-primary-lighten4:#B2DFDB;--color-222:#222;--color-333:#333;--color-666:#666;--color-777:#777;--color-999:#999;--color-ccc:#ccc;--color-f3:#f3f3f3;--color-f2f4f742:#f2f4f742;--color-f8:#f8f8f8;--color-f2f4f7:#f2f4f7;--color-d5e6e8:#d5e6e8;--zIndex-breadcrumbs:999}.buttons{height:36px;width:224px}.half-button{height:36px;width:88px}.default-width{width:1184px;min-width:1184px;max-width:1184px;margin:0 auto}.defaultLink{color:#008978;cursor:pointer}.default-active{color:var(--v-primary-base) !important}.border-bottom-dashed{border-bottom:1px dashed var(--color-ccc)}.white-bgc{background-color:#fff}.ellipsis{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.vline{display:inline-block;width:1px;height:10px;vertical-align:middle;background-color:#e0e0e0;margin:0 10px}.resume-box{border-radius:5px;padding:20px 30px;background-color:#fff}.resume-header{display:flex;justify-content:space-between;align-items:center;height:36px}.resume-title{font-weight:700;font-size:18px;border-left:5px solid #00897B;padding-left:12px;line-height:17px}.resumeNoDataText{color:var(--color-666);font-size:14px}.card-box{width:100%;height:100%}

+ 13 - 3
src/styles/index.scss

@@ -7,7 +7,17 @@
   --v-primary-lighten2: #4DB6AC;
   --v-primary-lighten3: #80CBC4;
   --v-primary-lighten4: #B2DFDB;
-  --default-text: #666;
+  --color-222: #222;
+  --color-333: #333;
+  --color-666: #666;
+  --color-777: #777;
+  --color-999: #999;
+  --color-ccc: #ccc;
+  --color-f3: #f3f3f3;
+  --color-f2f4f742: #f2f4f742;
+  --color-f8: #f8f8f8;
+  --color-f2f4f7: #f2f4f7;
+  --color-d5e6e8: #d5e6e8;
   --zIndex-breadcrumbs: 999;
 }
 
@@ -44,7 +54,7 @@
 }
 
 .border-bottom-dashed {
-  border-bottom: 1px dashed #ccc;
+  border-bottom: 1px dashed var(--color-ccc);
 }
 
 .white-bgc {
@@ -89,7 +99,7 @@
 }
 
 .resumeNoDataText {
-  color: #666;
+  color: var(--color-666);
   font-size: 14px;
 }
 

+ 4 - 4
src/styles/protocol/index.css

@@ -71,7 +71,7 @@ del, ins, u, s, a, a:hover {
 }
 
 .Protocol p {
-  color: #333333;
+  color: var(--color-333);
   font-size: 14px;
   line-height: 30px;
 }
@@ -79,7 +79,7 @@ del, ins, u, s, a, a:hover {
 .segment {
   width: 100%;
   font-size: 22px;
-  color: #333333;
+  color: var(--color-333);
   margin-top: 45px;
   margin-bottom: 32px;
   font-weight: 700;
@@ -93,14 +93,14 @@ del, ins, u, s, a, a:hover {
 }
 
 .crosshead {
-  color: #333333;
+  color: var(--color-333);
 }
 
 .text-color {
   margin-top: 0px;
   margin-bottom: 0px;
   padding: 0px;
-  color: #333333;
+  color: var(--color-333);
   font-size: 14px;
   line-height: 30px;
   font-family: 微软雅黑;

+ 1 - 1
src/styles/protocol/index.min.css

@@ -1 +1 @@
-html,body,h1,h2,h3,h4,h5,h6,div,dl,dt,dd,ul,ol,li,p,blockquote,pre,hr,figure,table,caption,th,td,form,fieldset,legend,input,button,textarea,menu{margin:0;padding:0}header,footer,section,article,aside,nav,hgroup,address,figure,figcaption,menu,details{display:block}table{border-collapse:collapse;border-spacing:0}caption,th{text-align:left;font-weight:normal}html,body,fieldset,img,iframe,abbr{border:0}i,cite,em,var,address,dfn{font-style:normal}[hidefocus],summary{outline:0}li{list-style:none}h1,h2,h3,h4,h5,h6,small{font-size:100%}a,button{cursor:pointer}h1,h2,h3,h4,h5,h6,em,strong,b{font-weight:bold}del,ins,u,s,a,a:hover{text-decoration:none}.conter,.conttle{width:100%;overflow:hidden}.large{width:100%;height:1px;background-color:var(--v-primary-base)}.Protocol{width:1040px;margin:0 auto;background-color:#fff;padding:40px 40px 90px;box-sizing:border-box;font-family:"微软雅黑"}.Protocol p{color:#333333;font-size:14px;line-height:30px}.segment{width:100%;font-size:22px;color:#333333;margin-top:45px;margin-bottom:32px;font-weight:700;text-align:center}.subtitle,.crosshead{color:var(--v-primary-base);font-size:14px;line-height:30px}.crosshead{color:#333333}.text-color{margin-top:0px;margin-bottom:0px;padding:0px;color:#333;font-size:14px;line-height:30px;font-family:微软雅黑;white-space:normal}.text-font{font-family:宋体, SimSun}.text-size{margin:0px;padding:0px;font-size:14px;color:#00897B;line-height:30px;font-family:微软雅黑;white-space:normal}.text-p{text-align:justify;font-family:Calibri;font-size:14px;white-space:normal}
+html,body,h1,h2,h3,h4,h5,h6,div,dl,dt,dd,ul,ol,li,p,blockquote,pre,hr,figure,table,caption,th,td,form,fieldset,legend,input,button,textarea,menu{margin:0;padding:0}header,footer,section,article,aside,nav,hgroup,address,figure,figcaption,menu,details{display:block}table{border-collapse:collapse;border-spacing:0}caption,th{text-align:left;font-weight:normal}html,body,fieldset,img,iframe,abbr{border:0}i,cite,em,var,address,dfn{font-style:normal}[hidefocus],summary{outline:0}li{list-style:none}h1,h2,h3,h4,h5,h6,small{font-size:100%}a,button{cursor:pointer}h1,h2,h3,h4,h5,h6,em,strong,b{font-weight:bold}del,ins,u,s,a,a:hover{text-decoration:none}.conter,.conttle{width:100%;overflow:hidden}.large{width:100%;height:1px;background-color:var(--v-primary-base)}.Protocol{width:1040px;margin:0 auto;background-color:#fff;padding:40px 40px 90px;box-sizing:border-box;font-family:"微软雅黑"}.Protocol p{color:var(--color-333);font-size:14px;line-height:30px}.segment{width:100%;font-size:22px;color:var(--color-333);margin-top:45px;margin-bottom:32px;font-weight:700;text-align:center}.subtitle,.crosshead{color:var(--v-primary-base);font-size:14px;line-height:30px}.crosshead{color:var(--color-333)}.text-color{margin-top:0px;margin-bottom:0px;padding:0px;color:#333;font-size:14px;line-height:30px;font-family:微软雅黑;white-space:normal}.text-font{font-family:宋体, SimSun}.text-size{margin:0px;padding:0px;font-size:14px;color:#00897B;line-height:30px;font-family:微软雅黑;white-space:normal}.text-p{text-align:justify;font-family:Calibri;font-size:14px;white-space:normal}

+ 3 - 3
src/styles/protocol/index.scss

@@ -69,7 +69,7 @@ del,ins,u,s,a,a:hover {
 }
 
 .Protocol p {
-  color: #333333;
+  color: var(--color-333);
   font-size: 14px;
   line-height: 30px;
 }
@@ -77,7 +77,7 @@ del,ins,u,s,a,a:hover {
 .segment {
   width: 100%;
   font-size: 22px;
-  color: #333333;
+  color: var(--color-333);
   margin-top: 45px;
   margin-bottom: 32px;
   font-weight: 700;
@@ -91,7 +91,7 @@ del,ins,u,s,a,a:hover {
 }
 
 .crosshead {
-  color: #333333;
+  color: var(--color-333);
 }
 .text-color {
   margin-top: 0px; 

+ 5 - 5
src/styles/recruit/company.css

@@ -2,7 +2,7 @@
   width: 64px;
   font-weight: 500;
   margin-right: 24px;
-  color: #222;
+  color: var(--color-222);
 }
 
 .label-content {
@@ -10,7 +10,7 @@
 }
 
 .label-color {
-  color: #222;
+  color: var(--color-222);
   font-size: 14px;
   margin-right: 24px;
   display: inline-block;
@@ -73,7 +73,7 @@
   height: 22px;
   font-size: 16px;
   font-weight: 400;
-  color: #222;
+  color: var(--color-222);
   line-height: 22px;
   margin: 0 0 4px 0;
   padding: 0;
@@ -87,7 +87,7 @@
   height: 18px;
   font-size: 13px;
   font-weight: 400;
-  color: #999;
+  color: var(--color-999);
   line-height: 18px;
 }
 
@@ -99,7 +99,7 @@
   padding: 10px 20px;
   background-color: #f8fcfb;
   font-size: 14px;
-  color: #666;
+  color: var(--color-666);
 }
 
 .company-info-bottom .bottom-tag {

+ 1 - 1
src/styles/recruit/company.min.css

@@ -1 +1 @@
-.label-title{width:64px;font-weight:500;margin-right:24px;color:#222}.label-content{flex:1}.label-color{color:#222;font-size:14px;margin-right:24px;display:inline-block;cursor:pointer}.label-color:hover{color:var(--v-primary-base)}.actives{color:var(--v-primary-base);font-weight:600}.company-box{display:flex;flex-wrap:wrap}.sub-li{position:relative;width:calc((100% - 36px) / 4);min-width:calc((100% - 36px) / 4);max-width:calc((100% - 36px) / 4);margin:0 12px 12px 0;height:130px;border-radius:12px;padding:0;overflow:hidden;transition:all .2s linear;background-color:#fff;cursor:pointer}.sub-li:nth-child(4n){margin-right:0}.sub-li:hover{box-shadow:0 16px 40px 0 rgba(153,153,153,0.3)}.company-info{float:left;margin-left:16px;width:282px}.company-info-top{display:flex;height:90px;line-height:90px;padding:0 20px;align-items:center;overflow:hidden}.company-info h3{height:22px;font-size:16px;font-weight:400;color:#222;line-height:22px;margin:0 0 4px 0;padding:0;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.company-info p{height:18px;font-size:13px;font-weight:400;color:#999;line-height:18px}.company-info-bottom{width:100%;height:41px;overflow:hidden;white-space:nowrap;padding:10px 20px;background-color:#f8fcfb;font-size:14px;color:#666}.company-info-bottom .bottom-tag{width:243px}
+.label-title{width:64px;font-weight:500;margin-right:24px;color:var(--color-222)}.label-content{flex:1}.label-color{color:var(--color-222);font-size:14px;margin-right:24px;display:inline-block;cursor:pointer}.label-color:hover{color:var(--v-primary-base)}.actives{color:var(--v-primary-base);font-weight:600}.company-box{display:flex;flex-wrap:wrap}.sub-li{position:relative;width:calc((100% - 36px) / 4);min-width:calc((100% - 36px) / 4);max-width:calc((100% - 36px) / 4);margin:0 12px 12px 0;height:130px;border-radius:12px;padding:0;overflow:hidden;transition:all .2s linear;background-color:#fff;cursor:pointer}.sub-li:nth-child(4n){margin-right:0}.sub-li:hover{box-shadow:0 16px 40px 0 rgba(153,153,153,0.3)}.company-info{float:left;margin-left:16px;width:282px}.company-info-top{display:flex;height:90px;line-height:90px;padding:0 20px;align-items:center;overflow:hidden}.company-info h3{height:22px;font-size:16px;font-weight:400;color:var(--color-222);line-height:22px;margin:0 0 4px 0;padding:0;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.company-info p{height:18px;font-size:13px;font-weight:400;color:var(--color-999);line-height:18px}.company-info-bottom{width:100%;height:41px;overflow:hidden;white-space:nowrap;padding:10px 20px;background-color:#f8fcfb;font-size:14px;color:var(--color-666)}.company-info-bottom .bottom-tag{width:243px}

+ 5 - 5
src/styles/recruit/company.scss

@@ -3,13 +3,13 @@
   width: 64px;
   font-weight: 500;
   margin-right: 24px;
-  color: #222;
+  color: var(--color-222);
 }
 .label-content {
   flex: 1;
 }
 .label-color {
-  color: #222;
+  color: var(--color-222);
   font-size: 14px;
   margin-right: 24px;
   display: inline-block;
@@ -67,7 +67,7 @@
   height: 22px;
   font-size: 16px;
   font-weight: 400;
-  color: #222;
+  color: var(--color-222);
   line-height: 22px;
   margin: 0 0 4px 0;
   padding: 0;
@@ -80,7 +80,7 @@
   height: 18px;
   font-size: 13px;
   font-weight: 400;
-  color: #999;
+  color: var(--color-999);
   line-height: 18px;
 }
 .company-info-bottom {
@@ -91,7 +91,7 @@
   padding: 10px 20px;
   background-color: #f8fcfb;
   font-size: 14px;
-  color: #666;
+  color: var(--color-666);
   .bottom-tag {
     width: 243px;
   }

+ 0 - 13
src/views/Home/enterprise.vue

@@ -1,13 +0,0 @@
-<template>
-  <enterprise></enterprise>
-</template>
-
-<script setup>
-defineOptions({ name: 'enterprise-home-index'})
-
-import enterprise from './company'
-</script>
-
-<style scoped lang="scss">
-
-</style>

+ 0 - 12
src/views/Home/index.vue

@@ -1,12 +0,0 @@
-<template>
-  <personal ref="personalRef"></personal>
-</template>
-
-<script setup>
-defineOptions({ name:'home-index'})
-import personal from './personal/index.vue'
-</script>
-
-<style lang="scss" scoped>
-
-</style>

+ 14 - 7
src/views/personal/components/integralShow.vue → src/views/integral/components/integralShow.vue

@@ -2,8 +2,8 @@
 <template>
   <div class="statisticsBox">
     <div class="mt-2">
-      <span style="font-size: 20px; color: #333; line-height: 28px; font-weight: bold;" class="ml-10">{{ props.title }}</span>
-      <span style="font-size: 14px; color: #777; line-height: 24px; cursor: pointer;" class="ml-2" @click="integralRulesClick">{{ $t('points.integralRules') }}</span>
+      <span style="font-size: 20px; color: var(--color-333); line-height: 28px; font-weight: bold;" class="ml-10">{{ props.title }}</span>
+      <span style="font-size: 14px; color: var(--color-666); line-height: 24px; cursor: pointer;" class="ml-2" @click="integralRulesClick">{{ $t('points.integralRules') }}</span>
     </div>
     <div class="d-flex justify-space-between align-end my-1">
       <span style="font-size: 42px; color: #10897bba; line-height: 50px;" class="ml-10 cursor-pointer" @click="integralDetails">{{ integral }}</span>
@@ -11,12 +11,12 @@
         <!-- 积分商城 -->
         <template v-if="props.showMall">
           <!-- <span>积分土豪的都喜欢来这里,</span> -->
-          <span style="color: #777; cursor: pointer;" @click="handleClickMall">{{ $t('points.handpickMall') }}</span>
+          <span class="mall-text" @click="handleClickMall">{{ $t('points.handpickMall') }}</span>
         </template>
         <!-- 任务中心 -->
         <template v-if="props.taskCenter">
           <span class="vline"></span>
-          <span style=" color: #777; cursor: pointer;" @click="router.push({ path: '/personalTaskCenter' })">赚取积分</span>
+          <span style=" color: var(--color-666); cursor: pointer;" @click="router.push({ path: '/recruit/personal/TaskCenter' })">赚取积分</span>
         </template>
       </span>
     </div>
@@ -60,7 +60,7 @@ getIntegral()
 
 // 积分规则
 const integralRulesClick = () => {
-  window.open('/personalIntegralRules')
+  window.open('/integral/personalIntegralRules')
 }
 
 // 跳转臻选商城
@@ -69,7 +69,7 @@ const handleClickMall = () => {
 }
 // 积分详情
 const integralDetails = () => {
-  window.open(props.isEnterprise ? '/enterprise/memberCenter/myPoints' : '/pointsManagement')
+  window.open(props.isEnterprise ? '/enterprise/memberCenter/myPoints' : '/integral/pointsManagement')
 }
 </script>
 <style lang="scss" scoped>
@@ -77,7 +77,14 @@ const integralDetails = () => {
   padding: 10px 0;
   border-radius: 10px;
   background-color: var(--default-bgc);
-  // background-color: #f3f3f3;
+  // background-color: var(--color-f3);
   // font-family: 宋体, SimSun;
 }
+.mall-text {
+  color: var(--color-666);
+  cursor: pointer;
+  &:hover {
+    color: var(--v-primary-base);
+  }
+}
 </style>

+ 0 - 0
src/views/personal/integralRules/components/expiredOfPoints.vue → src/views/integral/integralRules/components/expiredOfPoints.vue


+ 0 - 0
src/views/personal/integralRules/components/howToEarnPoints.vue → src/views/integral/integralRules/components/howToEarnPoints.vue


+ 0 - 0
src/views/personal/integralRules/components/pointsViolation.vue → src/views/integral/integralRules/components/pointsViolation.vue


+ 0 - 0
src/views/personal/integralRules/components/transferOfPoints.vue → src/views/integral/integralRules/components/transferOfPoints.vue


+ 0 - 0
src/views/personal/integralRules/components/whatIsPoints.vue → src/views/integral/integralRules/components/whatIsPoints.vue


+ 3 - 3
src/views/personal/integralRules/index.vue → src/views/integral/integralRules/index.vue

@@ -45,7 +45,7 @@ const items = [
   { key: 'whatIsPoints', htmlContent: '<p>所有门墩儿注册用户在门墩儿活动(回答问题、采纳答案、分享内容等)过程中均有机会获得积分,积分是一种荣誉的体现。</p><p>&nbsp;</p><p>所获积分可以通过访问积分商城用来购买道具甚至兑换实物礼品。积分商城将在每月上旬(每月10日以前)进行产品库存更新,请随时关注关于积分的新消息吧。</p>' },
   { key: 'howToEarnPoints', htmlContent: '' },
   { key: 'pointsViolation', htmlContent: '<p>如果会员利用系统漏洞作弊等违规方式获得积分,经查证后,门墩儿有权自由裁定,追缴相关积分,甚至查封会员帐号,并保留追究相应法律责任的权利。</p><p>&nbsp;</p><p><strong>修改及终止:</strong>门墩儿有权根据需要取消细则或增删、修订细则的权利(包括但不限于用户资格、积分计算及兑换标准),本积分管理规则。</p><p>&nbsp;</p>' },
-  { key: 'transferOfPoints', htmlContent: '<ol style="list-style-type: decimal;margin-left: 20px;"><li style="margin-bottom: 10px;"><h4 style="color: #333;">基本转让条件</h4><p>- 积分持有人必须是注册并验证的账户所有者。<br>- 转让的积分必须是账户内有效且未过期的积分。<br>- 转让双方必须同意转让条款和条件,并遵循所有适用的法律和规定。</p></li><li style="margin-bottom: 10px;"><h4 style="color: #333;">转让限额</h4><p>- 设定每日、每周或每月的积分转让限额,以防止滥用。<br>- 根据账户类型或会员级别,设定不同的转让限额。<br>- 允许特殊情况下(如促销活动、奖励计划等)的临时调整。</p></li><li style="margin-bottom: 10px;"><h4 style="color: #333;">转让费用</h4><p>- 根据转让的积分数量或金额,收取一定比例的转让费用。<br>- 费用可以用于维护积分系统、提供客户服务或作为其他奖励计划的资金来源。<br>- 提前公开并明确告知所有费用结构。</p></li><li style="margin-bottom: 10px;"><h4 style="color: #333;">转让流程</h4><p>- 明确积分转让的申请、审核和确认流程。<br>- 要求双方提供必要的身份验证和转让信息。<br>- 使用安全的电子交易系统或平台来完成积分转让。<br>- 转让完成后,向双方发送确认通知,并更新账户余额。</p></li><li style="margin-bottom: 10px;"><h4 style="color: #333;">违规处理</h4><p>- 明确规定违反转让规则的行为及其后果,如冻结账户、撤销转让、扣除积分等。<br>- 设立投诉和申诉机制,以便对任何争议或问题进行调查和解决。<br>- 定期审查并更新规则,以应对新的威胁和漏洞。</p></li></ol>' },
+  { key: 'transferOfPoints', htmlContent: '<ol style="list-style-type: decimal;margin-left: 20px;"><li style="margin-bottom: 10px;"><h4 style="color: var(--color-333);">基本转让条件</h4><p>- 积分持有人必须是注册并验证的账户所有者。<br>- 转让的积分必须是账户内有效且未过期的积分。<br>- 转让双方必须同意转让条款和条件,并遵循所有适用的法律和规定。</p></li><li style="margin-bottom: 10px;"><h4 style="color: var(--color-333);">转让限额</h4><p>- 设定每日、每周或每月的积分转让限额,以防止滥用。<br>- 根据账户类型或会员级别,设定不同的转让限额。<br>- 允许特殊情况下(如促销活动、奖励计划等)的临时调整。</p></li><li style="margin-bottom: 10px;"><h4 style="color: var(--color-333);">转让费用</h4><p>- 根据转让的积分数量或金额,收取一定比例的转让费用。<br>- 费用可以用于维护积分系统、提供客户服务或作为其他奖励计划的资金来源。<br>- 提前公开并明确告知所有费用结构。</p></li><li style="margin-bottom: 10px;"><h4 style="color: var(--color-333);">转让流程</h4><p>- 明确积分转让的申请、审核和确认流程。<br>- 要求双方提供必要的身份验证和转让信息。<br>- 使用安全的电子交易系统或平台来完成积分转让。<br>- 转让完成后,向双方发送确认通知,并更新账户余额。</p></li><li style="margin-bottom: 10px;"><h4 style="color: var(--color-333);">违规处理</h4><p>- 明确规定违反转让规则的行为及其后果,如冻结账户、撤销转让、扣除积分等。<br>- 设立投诉和申诉机制,以便对任何争议或问题进行调查和解决。<br>- 定期审查并更新规则,以应对新的威胁和漏洞。</p></li></ol>' },
   { key: 'expiredOfPoints', htmlContent: '' },
 ]
 const tab = ref(0)
@@ -68,7 +68,7 @@ const htmlContent = ref([items[0].htmlContent])
   width: 100%;
   line-height: 50px;
   font-weight: 500;
-  // color: #666;
+  // color: var(--color-666);
   font-size: 16px;
   cursor: pointer;
   margin: 0;
@@ -86,7 +86,7 @@ h3 {
   white-space: pre-wrap;
   word-break: break-all;
   line-height: 28px;
-  color: #333;
+  color: var(--color-333);
   font-size: 15px;
   text-align: justify;
   letter-spacing: 0;

+ 0 - 0
src/views/personal/pointsManagement/components/exchange.vue → src/views/integral/pointsManagement/components/exchange.vue


+ 0 - 0
src/views/personal/pointsManagement/components/exchangeRecords.vue → src/views/integral/pointsManagement/components/exchangeRecords.vue


+ 0 - 0
src/views/personal/pointsManagement/components/exchangeRecordsTable.vue → src/views/integral/pointsManagement/components/exchangeRecordsTable.vue


+ 0 - 0
src/views/personal/pointsManagement/components/integralTable.vue → src/views/integral/pointsManagement/components/integralTable.vue


+ 1 - 1
src/views/personal/pointsManagement/index.vue → src/views/integral/pointsManagement/index.vue

@@ -24,7 +24,7 @@
 <script setup>
 import pointsDetails from './pointsDetails.vue'
 import pointsMall from './pointsMall.vue'
-import integralShow from '@/views/personal/components/integralShow.vue'
+import integralShow from '@/views/integral/components/integralShow.vue'
 // import { useRoute } from 'vue-router'; const route = useRoute()
 // import { useRouter } from 'vue-router'; const router = useRouter()
 // import { ref } from 'vue'

+ 0 - 0
src/views/personal/pointsManagement/pointsDetails.vue → src/views/integral/pointsManagement/pointsDetails.vue


+ 0 - 0
src/views/personal/pointsManagement/pointsMall.vue → src/views/integral/pointsManagement/pointsMall.vue


+ 1 - 1
src/views/login/index.vue

@@ -230,7 +230,7 @@ const switchToPersonalLogin = () => {
   padding: 0 14px;
   border-radius: 4px;
   font-size: 12px;
-  color: #666;
+  color: var(--color-666);
   line-height: 32px;
   text-align: center;
   background-color: #fff;

+ 4 - 4
src/views/mall/index.vue

@@ -3,8 +3,8 @@
   <div class="default-width white-bgc px-3 pt-5 pb-10">
     <div class="statisticsBox">
       <div class="mt-2">
-        <span style="font-size: 20px; color: #333; line-height: 28px; font-weight: bold;" class="ml-10">您当前可用积分</span>
-        <span style="font-size: 14px; color: #777; line-height: 24px; cursor: pointer;" class="ml-2" @click="toPointsDetails">积分明细</span>
+        <span style="font-size: 20px; color: var(--color-333); line-height: 28px; font-weight: bold;" class="ml-10">您当前可用积分</span>
+        <span style="font-size: 14px; color: var(--color-666); line-height: 24px; cursor: pointer;" class="ml-2" @click="toPointsDetails">积分明细</span>
       </div>
       <div class="d-flex justify-space-between align-end my-1">
         <span style="font-size: 42px; color: #10897bba; line-height: 50px;" class="ml-10 cursor-pointer" @click="toPointsDetails">{{ integral }}</span>
@@ -38,7 +38,7 @@ defineOptions({name: 'personal-pointsMall'})
 const integral = '135'
 
 const toPointsDetails = () => {
-  router.push({ path: '/pointsManagement', query: { tab: 1 } })
+  router.push({ path: '/integral/pointsManagement', query: { tab: 1 } })
 }
 
 const getPositionList = () => {
@@ -51,7 +51,7 @@ const tab = ref(+route.query?.tab || 1)
   padding: 10px 0;
   border-radius: 10px;
   background-color: var(--default-bgc);
-  // background-color: #f3f3f3;
+  // background-color: var(--color-f3);
   // font-family: 宋体, SimSun;
 }
 </style>

+ 3 - 3
src/views/personal/purchasePackage/components/packagesDetail.vue → src/views/mall/purchasePackage/components/packagesDetail.vue

@@ -45,10 +45,10 @@ defineProps({
 .packagesDetail { // 套餐详情
   width: 710px;
   margin: 0 auto;
-  border: 1px solid #f3f3f3;
+  border: 1px solid var(--color-f3);
   // border-radius: 12px;
   background-color: var(--default-bgc);
-  background-color: #f2f4f742;
+  background-color: var(--color-f2f4f742);
   .detailItem {
     display: flex;
     div {
@@ -62,7 +62,7 @@ defineProps({
   .headers {
     background-color: var(--default-bgc);
     div {
-      color: #666 !important;
+      color: var(--color-666) !important;
       font-size: 16px !important;
       font-weight: bold !important;
       text-align: center;

+ 3 - 3
src/views/personal/purchasePackage/index.vue → src/views/mall/purchasePackage/index.vue

@@ -71,15 +71,15 @@ const detailItem = ref(packages?.length ? deal(packages[0]) : null)
 .fontBold { font-weight: bold; }
 .titleColor { color: #883a19; }
 .packagesItem {
-  border: 1px solid #f3f3f3;
+  border: 1px solid var(--color-f3);
   border-radius: 8px;
-  background-color: #f2f4f742;
+  background-color: var(--color-f2f4f742);
 }
 .dailyPrice {
   border-radius: 14px;
   background-color: #dde3e94f;
   padding: 2px 18px;
-  color: #666;
+  color: var(--color-666);
 }
 .active {
   padding: 4px 8px;

+ 2 - 2
src/views/personal/myPublicRecruitment/components/bountyDisplay.vue → src/views/publicRecruitment/components/bountyDisplay.vue

@@ -1,12 +1,12 @@
 <!-- 滚动展示 -->
 <template>
   <div style="height: 100%; width: 100%;" @mouseover="handleMouseover" @mouseleave="handleMouseleave">
-    <div class="mb-3" style="font-size: 13px; color: #666;">最近30天已有<span class="red">68人</span>提现成功,累计提现<span class="red">¥9450</span></div>
+    <div class="mb-3" style="font-size: 13px; color: var(--color-666);">最近30天已有<span class="red">68人</span>提现成功,累计提现<span class="red">¥9450</span></div>
     <!-- 滚动 -->
     <div
       class="scroll-container"
       ref="scrollRef"
-      style="height: calc(100% - 32px); overflow: hidden; font-size: 13px;color: #333;"
+      style="height: calc(100% - 32px); overflow: hidden; font-size: 13px;color: var(--color-333);"
     >
       <!-- 数据list -->
       <div

+ 0 - 0
src/views/personal/myPublicRecruitment/components/integralTable.vue → src/views/publicRecruitment/components/integralTable.vue


+ 0 - 0
src/views/personal/myPublicRecruitment/components/table.vue → src/views/publicRecruitment/components/table.vue


+ 0 - 0
src/views/personal/myPublicRecruitment/index.vue → src/views/publicRecruitment/index.vue


+ 3 - 3
src/views/personal/myPublicRecruitment/myRecommendation.vue → src/views/publicRecruitment/myRecommendation.vue

@@ -6,8 +6,8 @@
         <!-- 统计 -->
         <div class="statisticsBox">
           <div class="statisticsBox-item" :class="{'act': index === active}" v-for="(item, index) in statisticsList" :key="item.name" @click="statisticsClick(item, index)">
-            <div style="font-size: 18px; color: #333; font-weight: bold;">{{ statistics[item.name] || '0' }}</div>
-            <div style="font-size: 13px; color: #666;">{{ item.label }}</div>
+            <div style="font-size: 18px; color: var(--color-333); font-weight: bold;">{{ statistics[item.name] || '0' }}</div>
+            <div style="font-size: 13px; color: var(--color-666);">{{ item.label }}</div>
           </div>
         </div>
         <div class="topTip">推荐好友入职得赏金</div>
@@ -68,7 +68,7 @@ statisticsClick(statisticsList.value[0], 0)
 </script>
 <style lang="scss" scoped>
 .topTip {
-  color: #999;
+  color: var(--color-999);
   margin-top: 8px;
   font-size: 14px;
   padding: 5px 10px;

+ 2 - 2
src/views/personal/myPublicRecruitment/myRegistration.vue → src/views/publicRecruitment/myRegistration.vue

@@ -3,7 +3,7 @@
   <div>
     <integralShow></integralShow>
     <!-- 任务中心 -->
-    <div style="font-size: 14px; color: #777; text-align: right;" class="mr-5 mt-3 cursor-pointer" @click="router.push({ path: '/personalTaskCenter' })">《<span style=" color: var(--v-primary-base);">任务中心</span>》</div>
+    <div style="font-size: 14px; color: var(--color-666); text-align: right;" class="mr-5 mt-3 cursor-pointer" @click="router.push({ path: '/recruit/personal/TaskCenter' })">《<span style=" color: var(--v-primary-base);">任务中心</span>》</div>
     <!-- 积分明细 -->
     <div class="mt-3">
       <v-tabs v-model="tab" style="border-radius: 5px;" align-tabs="start" color="primary" bg-color="#f7f8fa" @update:model-value="handleChangeTab">
@@ -19,7 +19,7 @@
 
 <script setup>
 import TablePage from './components/integralTable.vue'
-import integralShow from '@/views/personal/components/integralShow.vue'
+import integralShow from '@/views/integral/components/integralShow.vue'
 import { useRouter } from 'vue-router'; const router = useRouter()
 import { ref } from 'vue'
 defineOptions({name: 'personal-myPublicRecruitment-myRegistration'})

+ 2 - 2
src/views/recruit/enterprise/enterpriseCenter/components/introduction.vue

@@ -39,14 +39,14 @@ h4 { margin-bottom: 8px; }
   white-space: pre-wrap;
   word-break: break-all;
   line-height: 28px;
-  color: #333;
+  color: var(--color-333);
   font-size: 15px;
   text-align: justify;
   letter-spacing: 0;
   // width: 60%;
 }
 .workAndRest {
-  color: #666;
+  color: var(--color-666);
   font-size: 15px;
 }
 .welfare-tags {

+ 6 - 6
src/views/recruit/enterprise/enterpriseCenter/components/positions.vue

@@ -48,7 +48,7 @@
           <p v-else :class="['name', {'default-active': val.active }]">{{ val.job.name }}</p>
           <div style="line-height: 40px;">
             <span v-for="k in desc" :key="k.mdi" class="mr-5">
-              <v-icon color="#666" size="15">{{ k.mdi }}</v-icon>
+              <v-icon color="var(--color-666)" size="15">{{ k.mdi }}</v-icon>
               <span class="ml-1 tag-text">{{ val.job[k.value] }}</span>
             </span>
           </div>
@@ -224,23 +224,23 @@ const desc = [
 .salary {
   font-size: 16px;
   font-weight: 700;
-  color: #fe574a;
+  color: var(--v-error-base);
   line-height: 22px;
   flex: none;
 }
 .tag-text {
-  color: #222;
+  color: var(--color-222);
   font-size: 14px;
 }
 .update-time {
-  color: #666;
+  color: var(--color-666);
   font-size: 14px;
   line-height: 40px;
 }
 .account-info {
   line-height: 52px;
   .account-label {
-    color: #666;
+    color: var(--color-666);
     font-size: 14px;
     font-weight: 600;
     margin: 0 10px;
@@ -256,7 +256,7 @@ const desc = [
   display: inline-block;
   margin-right: 20px;
   font-size: 15px;
-  color: #666;
+  color: var(--color-666);
   cursor: pointer;
   &:hover {
     color: var(--v-primary-base);

+ 2 - 2
src/views/recruit/enterprise/enterpriseCenter/index.vue

@@ -103,14 +103,14 @@ const handleTabClick = () => {
 .contact-info {
   font-size: 14px;
   font-weight: 500;
-  color: #222;
+  color: var(--color-222);
   line-height: 26px;
   margin-top: 8px;
 }
 .contact-location {
   font-size: 14px;
   font-weight: 500;
-  color: #222;
+  color: var(--color-222);
   line-height: 26px;
   margin-top: 8px;
 }

+ 1 - 1
src/views/recruit/enterprise/informationManagement/informationSettingsComponents/welfareLabel.vue

@@ -1,7 +1,7 @@
 <!-- 福利标签 -->
 <template>
   <span style="font-size: 16px;" class="mr-1">已选择标签</span>
-  <span style="font-size: 14px; color: #666;">(最多10个标签)</span>
+  <span style="font-size: 14px; color: var(--color-666);">(最多10个标签)</span>
   <div class="mb-15">
     <v-chip
       v-for="(item, index) in chosen" :key="index"

+ 1 - 1
src/views/recruit/enterprise/informationSetting/index.vue

@@ -15,7 +15,7 @@
             />
           </div>
         </div>
-        <div style="font-size: 14px; color: #999;">只支持JPG、JPEG、PNG类型的图片,大小不超过10M</div>
+        <div style="font-size: 14px; color: var(--color-999);">只支持JPG、JPEG、PNG类型的图片,大小不超过10M</div>
       </template>
     </CtForm>
     <v-btn class="buttons mt-5" color="primary" @click.stop="handleSubmit">{{ $t('common.save') }}</v-btn>

+ 7 - 7
src/views/recruit/enterprise/interview/index.vue

@@ -31,7 +31,7 @@
           @update:model-value="handleStateChange"
         ></v-select>
       </div>
-      <!-- <div class="mr-3 mb-3 px-2 py-1" style="background-color: #999; color: #fff; border-radius: 5px;">
+      <!-- <div class="mr-3 mb-3 px-2 py-1" style="background-color: var(--color-999); color: #fff; border-radius: 5px;">
         <v-icon size="30">mdi mdi-view-list-outline</v-icon>
         <v-icon size="30">mdi mdi-circle-small</v-icon>
       </div> -->
@@ -70,7 +70,7 @@
             <v-avatar class="mr-2" size=50 :image="item?.avatar || 'https://minio.citupro.com/dev/menduner/7.png'"></v-avatar>
             <div class="d-flex flex-column mr-3" style="width: 110px;">
               <span class="ellipsis mb-1">{{ item?.name }}</span>
-              <span class="ellipsis" style="color: #999;">{{ item?.job }}</span>
+              <span class="ellipsis" style="color: var(--color-999);">{{ item?.job }}</span>
             </div>
             <span style="min-width: 100px;">离职-随时到岗</span>
           </div>
@@ -88,11 +88,11 @@
             <v-icon class="mx-3 mt-2" size="20" color="primary">mdi mdi-video-account</v-icon>
             <span class="d-flex flex-column">
               <span>{{ $t('interview.onlineInterview') }}</span>
-              <span style="color: #999;">腾讯会议</span>
+              <span style="color: var(--color-999);">腾讯会议</span>
             </span>
           </span>
           <!-- 面试状态: '待接受'/'已取消' -->
-           <span :style="{ 'color': item.interviewStatus ? 'orange' :'#999'}">
+           <span :style="{ 'color': item.interviewStatus ? 'orange' :'var(--color-999)'}">
             <v-icon size="30">mdi mdi-circle-small</v-icon>
             <span>{{ $t(item.interviewStatus ? 'interview.waitingForAcceptance' :'interview.canceled') }}</span>
            </span>
@@ -168,14 +168,14 @@ const handleStateChange = (val) => {
 .fz14 { font-size: 14px; }
 .fz15 { font-size: 15px; }
 .fz16 { font-size: 16px; }
-.color666 { color: #666; }
-.color999 { color: #999; }
+.color666 { color: var(--color-666); }
+.color999 { color: var(--color-999); }
 .primaryColor { color: var(--v-primary-base); }
 .listItem {
   cursor: pointer;
   
   &:hover {
-    background-color: #f8f8f8;
+    background-color: var(--color-f8);
   }
 }
 </style>

+ 1 - 1
src/views/recruit/enterprise/memberCenter/myPoints/index.vue

@@ -22,7 +22,7 @@
 <script setup>
 import pointsDetails from './pointsDetails.vue'
 import pointsMall from './pointsMall.vue'
-import integralShow from '@/views/personal/components/integralShow.vue'
+import integralShow from '@/views/integral/components/integralShow.vue'
 import { useRoute } from 'vue-router'; const route = useRoute()
 import { useRouter } from 'vue-router'; const router = useRouter()
 import { ref } from 'vue'

+ 1 - 1
src/views/recruit/enterprise/personnelManagement/components/screen.vue

@@ -115,7 +115,7 @@ watch(
 <style scoped lang="scss">
 .reset-text {
   font-size: 14px;
-  color: #777;
+  color: var(--color-666);
   &:hover {
     color: var(--v-primary-base);
   }

+ 1 - 1
src/views/recruit/enterprise/positionManagement/components/add.vue

@@ -94,7 +94,7 @@ if (route.query && route.query.id) {
 <style scoped lang="scss">
 .desc {
   font-size: 13px;
-  color: #777;
+  color: var(--color-666);
 }
 </style>
 

+ 2 - 2
src/views/recruit/enterprise/positionManagement/components/baseInfo.vue

@@ -3,7 +3,7 @@
     <CtForm ref="formPageRef" :items="items" style="width: 600px;">
       <template #enterpriseName="{ item }">
         <div class="mb-4">
-          <span style="color: #777;">公司:</span>
+          <span style="color: var(--color-666);">公司:</span>
           <span style="color: #555">{{ item.value }}</span>
         </div>
       </template>
@@ -189,7 +189,7 @@ defineExpose({
 
 <style scoped lang="scss">
 .enterpriseName {
-  color: #777;
+  color: var(--color-666);
 }
 .jobTypeCardBox {
   position: absolute;

+ 6 - 6
src/views/recruit/enterprise/positionManagement/components/details.vue

@@ -8,7 +8,7 @@
       </div>
       <div class="banner-tags mt-4">
         <span v-for="k in desc" :key="k.mdi" class="mr-10">
-          <v-icon color="#666" size="20">{{ k.mdi }}</v-icon>
+          <v-icon color="var(--color-666)" size="20">{{ k.mdi }}</v-icon>
           <span class="ml-1">{{ info[k.value] }}</span>
         </span>
       </div>
@@ -47,7 +47,7 @@
               <h4>{{ $t('position.address') }}</h4>
               <div class="mt-2">
                 <v-icon size="25" color="primary">mdi-map-marker</v-icon>
-                <span style="color: #666;font-size: 15px;">{{ info.address }}</span>
+                <span style="color: var(--color-666);font-size: 15px;">{{ info.address }}</span>
               </div>
             </div>
             <v-divider class="my-3"></v-divider>
@@ -138,7 +138,7 @@ const handleEdit = () => {
 }
 .refresh-time {
   float: right;
-  color: #666;
+  color: var(--color-666);
   font-size: 14px;
   line-height: 66px;
   vertical-align: sub;
@@ -169,7 +169,7 @@ const handleEdit = () => {
   white-space: pre-wrap;
   word-break: break-all;
   line-height: 28px;
-  color: #333;
+  color: var(--color-333);
   font-size: 15px;
   text-align: justify;
   letter-spacing: 0;
@@ -181,12 +181,12 @@ const handleEdit = () => {
 .contact-name {
   font-size: 20px;
   font-weight: 500;
-  color: #222;
+  color: var(--color-222);
   line-height: 28px;
 }
 .contact-info {
   font-size: 15px;
-  color: #666;
+  color: var(--color-666);
   line-height: 21px;
   margin-top: 8px;
 }

+ 5 - 5
src/views/recruit/enterprise/positionManagement/components/item.vue

@@ -169,7 +169,7 @@ const handleToStatistics = () => {
   height: 145px;
 }
 .position-name {
-  color: #333;
+  color: var(--color-333);
   font-size: 19px;
   cursor: pointer;
   &:hover {
@@ -195,26 +195,26 @@ const handleToStatistics = () => {
 }
 .other-info {
   font-size: 15px;
-  color: #666;
+  color: var(--color-666);
 }
 .bottom {
   height: 40px;
   background-color: #f7f8fa;
   font-size: 14px;
-  color: #888;
+  color: var(--color-888);
 }
 .resume {
   display: flex;
   font-size: 13px;
   flex-direction: column;
   align-items: center;
-  color: #888;
+  color: var(--color-888);
   margin-right: 100px;
   cursor: pointer;
 }
 .resume-number {
   font-size: 20px;
   font-weight: 700;
-  color: #999;
+  color: var(--color-999);
 }
 </style>

+ 3 - 3
src/views/recruit/enterprise/purchasePackage/components/packagesDetail.vue

@@ -45,10 +45,10 @@ defineProps({
 .packagesDetail { // 套餐详情
   width: 710px;
   margin: 0 auto;
-  border: 1px solid #f3f3f3;
+  border: 1px solid var(--color-f3);
   // border-radius: 12px;
   background-color: var(--default-bgc);
-  background-color: #f2f4f742;
+  background-color: var(--color-f2f4f742);
   .detailItem {
     display: flex;
     div {
@@ -62,7 +62,7 @@ defineProps({
   .headers {
     background-color: var(--default-bgc);
     div {
-      color: #666 !important;
+      color: var(--color-666) !important;
       font-size: 16px !important;
       font-weight: bold !important;
       text-align: center;

+ 3 - 3
src/views/recruit/enterprise/purchasePackage/index.vue

@@ -71,15 +71,15 @@ const detailItem = ref(packages?.length ? deal(packages[0]) : null)
 .fontBold { font-weight: bold; }
 .titleColor { color: #883a19; }
 .packagesItem {
-  border: 1px solid #f3f3f3;
+  border: 1px solid var(--color-f3);
   border-radius: 8px;
-  background-color: #f2f4f742;
+  background-color: var(--color-f2f4f742);
 }
 .dailyPrice {
   border-radius: 14px;
   background-color: #dde3e94f;
   padding: 2px 18px;
-  color: #666;
+  color: var(--color-666);
 }
 .active {
   padding: 4px 8px;

+ 1 - 1
src/views/personal/components/inReview.vue → src/views/recruit/enterprise/register/inReview.vue

@@ -37,7 +37,7 @@
         
         <div class="text-center">
           <v-btn class="mt-16" color="warning" to="/">{{ $t('common.toHome') }}</v-btn>
-          <v-btn v-if="applyInfo.status === '2'" class="mt-16 ml-12" color="primary" to="/enterprise/register">{{ $t('common.resubmit') }}</v-btn>
+          <v-btn v-if="applyInfo.status === '2'" class="mt-16 ml-12" color="primary" to="/recruit/enterprise/register">{{ $t('common.resubmit') }}</v-btn>
         </div>
       </div>
     </v-card>

+ 3 - 3
src/views/personal/components/joiningEnterprise.vue → src/views/recruit/enterprise/register/joiningEnterprise.vue

@@ -21,7 +21,7 @@
       </div>
       <!-- 底部 -->
       <div class="text-center mt-5">
-        <v-btn color="primary" variant="text" @click="router.push({ path: '/enterprise/register' })">{{ $t('enterprise.registeringNewEnterprise') }}</v-btn>
+        <v-btn color="primary" variant="text" @click="router.push({ path: '/recruit/enterprise/register' })">{{ $t('enterprise.registeringNewEnterprise') }}</v-btn>
       </div>
     </v-card>
   </div>
@@ -98,7 +98,7 @@ const handleCommit = () => {
   margin: 0 auto;
 }
 .note {
-  color: #666;
+  color: var(--color-666);
   font-size: 14px;
   line-height: 32px;
 }
@@ -114,7 +114,7 @@ const handleCommit = () => {
     top: 45%;
     left: 50%;
     transform: translate(-50%, -50%);
-    color: #999;
+    color: var(--color-999);
   }
 }
 </style>

+ 9 - 9
src/views/personal/components/register.vue → src/views/recruit/enterprise/register/register.vue

@@ -9,8 +9,8 @@
       <div class="CtFormClass" style="width: 600px;">
         <CtForm ref="CtFormRef" :items="formItems" style="width: 100%;"></CtForm>
         <!-- 上传照片 -->
-        <div style="color: #999;">
-          <span class="mr-1" style="color: #fe574a;">*</span>
+        <div style="color: var(--color-999);">
+          <span class="mr-1" style="color: var(--v-error-base);">*</span>
           <span>上传营业执照</span>
           <!-- <span class="mx-3 defaultLink">查看示例</span> -->
           <span>支持jpg、jpeg、png格式,照片大小不得超过10M</span>
@@ -55,7 +55,7 @@
       </div>
       <!-- 底部 个人不能绑定企业 要去后端管理员加 -->
       <!-- <div class="text-center">
-        <v-btn color="primary" variant="text" @click="router.push({ path: '/enterprise/joiningEnterprise' })">{{ $t('enterprise.joiningEnterprise') }}</v-btn>
+        <v-btn color="primary" variant="text" @click="router.push({ path: '/recruit/enterprise/register/joiningEnterprise' })">{{ $t('enterprise.joiningEnterprise') }}</v-btn>
       </div> -->
     </v-card>
   </div>
@@ -142,7 +142,7 @@ const handleCommit = async () => {
   formItems.value.options.forEach(e => { baseInfo[e.key] = e.value })
   await enterpriseRegisterApply({ ...baseInfo, businessLicenseUrl })
   Snackbar.success(t('common.submittedSuccessfully'))
-  router.push({ path: '/enterprise/inReview' })
+  router.push({ path: '/recruit/enterprise/register/inReview' })
 }
 
 // 不通过的企业注册申请 重新发起
@@ -158,7 +158,7 @@ if (info && Object.keys(info).length) {
   margin: 0 auto;
 }
 .note {
-  color: #666;
+  color: var(--color-666);
   font-size: 14px;
   line-height: 32px;
 }
@@ -184,14 +184,14 @@ if (info && Object.keys(info).length) {
       top: 45%;
       left: 50%;
       transform: translate(-50%, -50%);
-      color: #999;
+      color: var(--color-999);
     }
   }
   // 验证是否为空
   .verifyAct {
-    color: #fe574a;
-    border: 1px solid #fe574a;
-    .icon { color: #fe574a; }
+    color: var(--v-error-base);
+    border: 1px solid var(--v-error-base);
+    .icon { color: var(--v-error-base); }
   }
 }
 </style>

+ 2 - 2
src/views/recruit/enterprise/talentPool/components/details/baseInfo.vue

@@ -14,7 +14,7 @@
     </div>
     <!-- 信息 -->
     <div style="flex: 1;">
-      <span style="font-size: 20px; font-weight: 600;color: #666;">{{ info?.name }}</span>
+      <span style="font-size: 20px; font-weight: 600;color: var(--color-666);">{{ info?.name }}</span>
       <div class="mt-3 d-flex">
         <div class="listBox" style="height: 68px">
           <div>
@@ -107,7 +107,7 @@ if (props.data && Object.keys(props.data).length) {
   width: 100%; /* 设置容器宽度 */
   // height: 68px;
   overflow: hidden;
-  color: #666;
+  color: var(--color-666);
   div {
     margin-right: 50px;
     span {

+ 1 - 1
src/views/recruit/enterprise/talentPool/components/details/jobIntention.vue

@@ -47,7 +47,7 @@ if (props.data?.length) interestList.value = dealJobData(props.data)
     font-size: 15px;
   }
   .grey-text {
-    color: #999;
+    color: var(--color-999);
   }
   .line {
     color: #e0e0e0;

+ 1 - 1
src/views/recruit/enterprise/talentPool/components/details/projectExperience.vue

@@ -39,7 +39,7 @@ if (props.data?.length) dataList.value = props.data
   border-radius: 6px;
   padding: 2px 10px 8px;
   // &:hover {
-  //   background-color: #f8f8f8;
+  //   background-color: var(--color-f8);
   // }
 }
 </style>

+ 2 - 2
src/views/recruit/enterprise/talentPool/components/details/vocationalSkills.vue

@@ -7,7 +7,7 @@
     >
       <span >{{ getText(k.skillId, skills) }}</span>
       <span class="vline"></span>
-      <span style="color: #999;">{{ getText(k.level, skillLevelArr) }}</span>
+      <span style="color: var(--color-999);">{{ getText(k.level, skillLevelArr) }}</span>
     </div>
   </div>
 </template>
@@ -48,7 +48,7 @@ getDict('menduner_skill_level').then(({ data }) => { // 字典
     font-size: 15px;
   }
   .grey-text {
-    color: #999;
+    color: var(--color-999);
   }
 }
 </style>

+ 3 - 3
src/views/recruit/enterprise/talentPool/components/details/workExperience.vue

@@ -41,9 +41,9 @@ if (props.data?.length) dataList.value = props.data
 
 <style lang="scss" scoped>
 .font15 { font-size: 15px;; }
-.color9 { color: #999; }
-.color6 { color: #666; }
-.color3 { color: #333; }
+.color9 { color: var(--color-999); }
+.color6 { color: var(--color-666); }
+.color3 { color: var(--color-333); }
 .educExpItem {
   border-radius: 6px;
   padding: 2px 10px 8px;

+ 2 - 2
src/views/recruit/enterprise/talentPool/components/filter.vue

@@ -1,6 +1,6 @@
 <template>
   <div class="px-5 py-3" style="position: relative;">
-    <h3 style="color: #00897B;">条件筛选</h3>
+    <h3 style="color: var(--v-primary-base);">条件筛选</h3>
     <v-divider class="my-3"></v-divider>
     <div class="text-right reset-text cursor-pointer" @click="handleReset">重置筛选</div>
     <CtForm ref="CtFormRef" :items="formItems" style="width: 100%;">
@@ -170,7 +170,7 @@ const handleResidence = (list, name) => {
 <style scoped lang="scss">
 .reset-text {
   font-size: 14px;
-  color: #777;
+  color: var(--color-666);
   &:hover {
     color: var(--v-primary-base);
   }

+ 4 - 4
src/views/recruit/enterprise/talentPool/index.vue

@@ -249,7 +249,7 @@ const talentPoolDetails = ({ userId, id }) => {
   height: 50px;
   line-height: 50px;
   font-size: 14px;
-  color: #666;
+  color: var(--color-666);
   padding: 0 20px;
 }
 .user-name {
@@ -258,7 +258,7 @@ const talentPoolDetails = ({ userId, id }) => {
   color: #555;
 }
 .user-info {
-  color: #666;
+  color: var(--color-666);
   font-size: 14px;
   font-weight: 500;
 }
@@ -285,7 +285,7 @@ const talentPoolDetails = ({ userId, id }) => {
   }
 }
 .second-title {
-  color: #666;
+  color: var(--color-666);
   font-size: 15px;
 }
 .timeline-item {
@@ -293,7 +293,7 @@ const talentPoolDetails = ({ userId, id }) => {
   align-items: center;
   justify-content: space-between;
   width: 100%;
-  color: #666;
+  color: var(--color-666);
   font-size: 13px;
   .timeline-item-name {
     width: 26%;

+ 4 - 4
src/views/recruit/personal/PersonalCenter/components/communication.vue

@@ -131,11 +131,11 @@ const handleMouseEnter = (val) => {
     .img-box {
       padding: 12px 24px;
       .name {
-        color: #222;
+        color: var(--color-222);
         font-weight: 400;
         font-size: 13px;
         .gray {
-          color: #666;
+          color: var(--color-666);
         }
       }
     }
@@ -160,7 +160,7 @@ const handleMouseEnter = (val) => {
       .job-name {
         height: 22px;
         line-height: 22px;
-        color: #222;
+        color: var(--color-222);
         margin-bottom: 12px;
       }
       .job-other {
@@ -174,7 +174,7 @@ const handleMouseEnter = (val) => {
       align-items: center
     }
     .interview-info {
-      color: #333;
+      color: var(--color-333);
       font-size: 15px;
     }
   }

+ 4 - 4
src/views/recruit/personal/PersonalCenter/components/interestedMe.vue

@@ -133,11 +133,11 @@ const handleMouseEnter = (val) => {
     .img-box {
       padding: 12px 24px;
       .name {
-        color: #222;
+        color: var(--color-222);
         font-weight: 400;
         font-size: 13px;
         .gray {
-          color: #666;
+          color: var(--color-666);
         }
       }
     }
@@ -162,7 +162,7 @@ const handleMouseEnter = (val) => {
       .job-name {
         height: 22px;
         line-height: 22px;
-        color: #222;
+        color: var(--color-222);
         margin-bottom: 12px;
       }
       .job-other {
@@ -176,7 +176,7 @@ const handleMouseEnter = (val) => {
       align-items: center
     }
     .interview-info {
-      color: #333;
+      color: var(--color-333);
       font-size: 15px;
     }
   }

+ 4 - 4
src/views/recruit/personal/PersonalCenter/components/seenMe.vue

@@ -133,11 +133,11 @@ const handleMouseEnter = (val) => {
     .img-box {
       padding: 12px 24px;
       .name {
-        color: #222;
+        color: var(--color-222);
         font-weight: 400;
         font-size: 13px;
         .gray {
-          color: #666;
+          color: var(--color-666);
         }
       }
     }
@@ -162,7 +162,7 @@ const handleMouseEnter = (val) => {
       .job-name {
         height: 22px;
         line-height: 22px;
-        color: #222;
+        color: var(--color-222);
         margin-bottom: 12px;
       }
       .job-other {
@@ -176,7 +176,7 @@ const handleMouseEnter = (val) => {
       align-items: center
     }
     .interview-info {
-      color: #333;
+      color: var(--color-333);
       font-size: 15px;
     }
   }

+ 4 - 4
src/views/recruit/personal/PersonalCenter/dynamic/left.vue

@@ -125,14 +125,14 @@ const handleChangeJobStatus = async () => {
     .username {
       font-weight: 500;
       font-size: 20px;
-      color: #222;
+      color: var(--color-222);
       height: 24px;
       line-height: 24px;
     }
     .userInfo {
       height: 21px;
       margin-top: 8px;
-      color: #666;
+      color: var(--color-666);
       font-size: 14px;
     }
   }
@@ -142,7 +142,7 @@ const handleChangeJobStatus = async () => {
     margin-left: 50px;
     font-size: 14px;
     font-weight: 500;
-    color: #333;
+    color: var(--color-333);
     text-align: left;
     .salary {
       font-size: 16px;
@@ -152,7 +152,7 @@ const handleChangeJobStatus = async () => {
       margin: -1px 0 0 16px;
     }
     .edu-time {
-      color: #999;
+      color: var(--color-999);
       font-weight: 400;
       margin-left: 20px;
     }

+ 3 - 3
src/views/recruit/personal/PersonalCenter/dynamic/right.vue

@@ -156,7 +156,7 @@ const handleDownload = (k) => {
     }
     .tip-text {
       font-size: 12px;
-      color: #666;
+      color: var(--color-666);
     }
     .title-text {
       font-weight: 600;
@@ -170,7 +170,7 @@ const handleDownload = (k) => {
   padding: 12px;
   .more-text {
     font-size: 12px;
-    color: #666;
+    color: var(--color-666);
     margin-left: 4px;
   }
   .upload--text {
@@ -180,7 +180,7 @@ const handleDownload = (k) => {
   }
   .last-update {
     font-size: 12px;
-    color: #666;
+    color: var(--color-666);
   }
   .attachment-item {
     color: #555;

+ 0 - 0
src/views/Home/personal/account/dynamic/accountBinding.vue → src/views/recruit/personal/accountSettings/dynamic/accountBinding.vue


+ 1 - 1
src/views/Home/personal/account/dynamic/editPassword.vue → src/views/recruit/personal/accountSettings/dynamic/editPassword.vue

@@ -112,7 +112,7 @@ h3 {
   padding-bottom: 25px;
 }
 .login-user {
-  color: var(--default-text);
+  color: var(--color-666);
   font-weight: 600;
 }
 </style>

+ 1 - 1
src/views/Home/personal/account/dynamic/privacySettings.vue → src/views/recruit/personal/accountSettings/dynamic/privacySettings.vue

@@ -35,7 +35,7 @@ h3 {
   color: #000;
 }
 .radio-desc {
-  color: var(--default-text);
+  color: var(--color-666);
   margin-left: 30px;
 }
 </style>

+ 0 - 0
src/views/Home/personal/account/dynamic/realAuthentication.vue → src/views/recruit/personal/accountSettings/dynamic/realAuthentication.vue


+ 5 - 5
src/views/Home/personal/account/index.vue → src/views/recruit/personal/accountSettings/index.vue

@@ -28,10 +28,10 @@ import { useI18n } from '@/hooks/web/useI18n'
 const { t } = useI18n()
 
 const items = [
-  { title: t('setting.accountBinding'), path: '/personalAccount/accountBinding', },
-  { title: t('setting.realNameAuthentication'), path: '/personalAccount/realAuthentication', },
-  { title: t('setting.editPassword'), path: '/personalAccount/editPassword', },
-  { title: t('setting.privacyPolicySettings'), path: '/personalAccount/privacySettings' }
+  { title: t('setting.accountBinding'), path: '/recruit/personal/accountSettings/accountBinding', },
+  { title: t('setting.realNameAuthentication'), path: '/recruit/personal/accountSettings/realAuthentication', },
+  { title: t('setting.editPassword'), path: '/recruit/personal/accountSettings/editPassword', },
+  { title: t('setting.privacyPolicySettings'), path: '/recruit/personal/accountSettings/privacySettings' }
 ]
 </script>
 
@@ -50,7 +50,7 @@ const items = [
   width: 100%;
   line-height: 62px;
   font-weight: 500;
-  // color: #666;
+  // color: var(--color-666);
   font-size: 16px;
   cursor: pointer;
   margin: 0;

+ 1 - 1
src/views/recruit/personal/company/index.vue

@@ -116,7 +116,7 @@ const handleChangePage = (index) => {
   position: absolute;
   bottom: 0;
   right: 30px;
-  color: #999;
+  color: var(--color-999);
   font-size: 14px;
   cursor: pointer;
   &:hover {

+ 0 - 0
src/views/Home/personal/components/headCarousel.vue → src/views/recruit/personal/home/components/headCarousel.vue


+ 5 - 5
src/views/Home/personal/components/homeJobTypeCard/index.vue → src/views/recruit/personal/home/components/homeJobTypeCard/index.vue

@@ -180,11 +180,11 @@ const carouselList = ref([
           font-size: 14px;
           margin-left: 12px;
           cursor: pointer;
-          color: #666666;
+          color: var(--color-666);
           font-family: 微软雅黑; 
           &:hover {
             color: var(--v-primary-base);
-            // background-color: #f8f8f8;
+            // background-color: var(--color-f8);
           }
         }
       }
@@ -198,8 +198,8 @@ const carouselList = ref([
     padding: 0 16px;
     overflow-y: auto;
     .categoryName { font-size: 16px; line-height: 28px; margin-top: 6px; color: var(--v-primary-base)}
-    .categoryName2 { font-size: 14px; color: #666666; width: 110px; margin-right: 4px;}
-    .jobItem { font-size: 14px; color: #333333; }
+    .categoryName2 { font-size: 14px; color: var(--color-666); width: 110px; margin-right: 4px;}
+    .jobItem { font-size: 14px; color: var(--color-333); }
     .rowItem {
       padding: 8px 0;
     }
@@ -212,7 +212,7 @@ const carouselList = ref([
         margin: 4px 28px 2px 0;
         float: left;
         cursor: pointer;
-        color: #333333;
+        color: var(--color-333);
         &:hover {
           color: var(--v-primary-base);
         }

+ 0 - 0
src/views/Home/personal/components/hotJobs.vue → src/views/recruit/personal/home/components/hotJobs.vue


+ 0 - 0
src/views/Home/personal/components/hotPromotedPositions.vue → src/views/recruit/personal/home/components/hotPromotedPositions.vue


+ 0 - 0
src/views/Home/personal/components/popularEnterprises.vue → src/views/recruit/personal/home/components/popularEnterprises.vue


+ 2 - 1
src/views/Home/personal/index.vue → src/views/recruit/personal/home/index.vue

@@ -15,6 +15,7 @@
 </template>
 
 <script setup>
+defineOptions({ name:'personal-index'})
 import headCarousel from './components/headCarousel.vue'
 import headSearch from '@/components/headSearch'
 import hotJobs from './components/hotJobs.vue'
@@ -23,8 +24,8 @@ import homeJobTypeCard from './components/homeJobTypeCard'
 import hotPromotedPositions from './components/hotPromotedPositions.vue'
 import PopularEnterprises from './components/popularEnterprises.vue'
 import { useRouter } from 'vue-router'
+
 const router = useRouter()
-defineOptions({ name:'personal-index'})
 
 const handleSearch = (val) => {
   if (val) router.push(`/recruit/personal/position?content=${val}`)

Vissa filer visades inte eftersom för många filer har ändrats