瀏覽代碼

面试管理、补充基本信息后更新用户信息

Xiao_123 9 月之前
父節點
當前提交
7e791d5722

+ 1 - 0
src/components/FormUI/autocomplete/index.vue

@@ -20,6 +20,7 @@
       :hide-no-data="item.hideNoData"
       :no-data-text="item.noDataText || 'No data available'"
       :hide-selected="item.hideSelected"
+      :hide-details="item.hireDetails || false"
       @update:search="v => item.search ? debouncedCallbackSearch(v) : null"
       @update:modelValue="modelValueUpDate"
     ></v-autocomplete>

+ 32 - 36
src/views/recruit/enterprise/interview/index.vue

@@ -1,42 +1,15 @@
-<!-- 面试 -->
 <template>
-  <v-card class="pa-5" style="height: 100%;font-size: 14px;">
+  <v-card class="pa-5" style="height: calc(100vh - 130px);font-size: 14px;">
     <div class="d-flex justify-space-between">
       <div class="d-flex mb-3">
-        <!-- 职位 -->
-        <v-autocomplete 
-          v-model="query.jobId" 
-          :items="positionItems" 
-          density="compact" 
-          variant="outlined" 
-          item-title="label" 
-          item-value="value"
-          clearable
-          hide-details
-          label="职位"
-          color="primary"
-          style="width: 300px;"
-          class="mr-3"
-        ></v-autocomplete>
-        <v-select 
-          v-model="query.status" 
-          :items="statusList" 
-          density="compact" 
-          variant="outlined" 
-          item-title="label" 
-          item-value="value"
-          clearable
-          hide-details
-          label="面试状态"
-          color="primary"
-          style="width: 300px;"
-        ></v-select>
+        <Autocomplete class="mr-3" v-model="query.jobId" :item="jobItem"></Autocomplete>
+        <Autocomplete v-model="query.status" :item="statusItem"></Autocomplete>
         <v-btn color="primary" class="half-button ml-3" @click="handleSearch">查 询</v-btn>
         <v-btn class="half-button ml-3" variant="outlined" color="primary" @click="handleReset">重 置</v-btn>
       </div>
     </div>
     <v-divider class="mb-3"></v-divider>
-    <div class="d-flex">
+    <div class="d-flex" style="height: calc(100vh - 228px);">
       <div>
         <div class="d-flex justify-space-between px-5">
           <div v-if="selectDateValue">
@@ -63,9 +36,11 @@
       </VueDatePicker>
       </div>
       <v-divider style="height: auto;" class="mr-5" vertical></v-divider>
-      <div style="flex: 1;overflow: hidden;">
+      <div style="flex: 1;">
         <div v-if="items.length">
-          <itemPage :items="items" :statusList="statusList" :positionItems="positionItems" @refresh="handleRefresh"></itemPage>
+          <div style="height: calc(100vh - 318px);overflow: auto;padding-right: 12px;">
+            <itemPage :items="items" :statusList="statusList" :positionItems="positionItems" @refresh="handleRefresh"></itemPage>
+          </div>
           <CtPagination
             v-if="total > 0"
             :total="total"
@@ -94,12 +69,16 @@ const items = ref([])
 const statusList = ref()
 const total = ref(0)
 const query = ref({
-  pageSize: 10,
+  pageSize: 20,
   pageNo: 1,
   status: null,
   jobId: null,
   time: []
 })
+const positionItems = ref([])
+
+const jobItem = ref({ width: 300, items: positionItems, clearable: true, hireDetails: true, label: '职位' })
+const statusItem = ref({ width: 300, items: statusList, clearable: true, hireDetails: true, label: '面试状态' })
 
 // 获取有面试的日期列表
 const markers = ref([])
@@ -173,9 +152,8 @@ const handleReset = () => {
 }
 
 // 职位
-const positionItems = ref([])
 const getPositionList = async () => {
-  const data = await getJobAdvertised({ hire: false })
+  const data = await getJobAdvertised()
   if (!data.length) return
   const list = dealDictArrayData([], data)
   positionItems.value = list.map(e => {
@@ -199,4 +177,22 @@ getPositionList()
   border-radius: 100%;
   background-color: var(--v-primary-base);
 }
+/* 滚动条样式 */
+::-webkit-scrollbar {
+  -webkit-appearance: none;
+  width: 4px;
+  height: 0px;
+}
+/* 滚动条内的轨道 */
+::-webkit-scrollbar-track {
+  background: rgba(0, 0, 0, 0.1);
+  border-radius: 0;
+}
+/* 滚动条内的滑块 */
+::-webkit-scrollbar-thumb {
+  cursor: pointer;
+  border-radius: 5px;
+  background: rgba(0, 0, 0, 0.15);
+  transition: color 0.2s ease;
+}
 </style>

+ 6 - 1
src/views/recruit/personal/home/index.vue

@@ -14,7 +14,7 @@
     </div>
   </div>
   <!-- 快速填写简易人才信息-弹窗 -->
-  <simplePage v-if="showSimplePage" :closeable="true" closeText="暂时跳过"></simplePage>
+  <simplePage v-if="showSimplePage" :closeable="true" closeText="暂时跳过" @simpleInfoReady="handleUpdateInfo"></simplePage>
 </template>
 
 <script setup>
@@ -48,6 +48,11 @@ nextTick(() => {
 const handleSearch = (val) => {
   if (val) router.push(`/recruit/personal/position?content=${val}`)
 }
+
+// 更新用户基本信息
+const handleUpdateInfo = async () => {
+  await store.getUserBaseInfos(null)
+}
 </script>
 
 <style lang="scss" scoped>