Pārlūkot izejas kodu

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

Xiao_123 11 mēneši atpakaļ
vecāks
revīzija
d97e7255f5
3 mainītis faili ar 85 papildinājumiem un 12 dzēšanām
  1. 2 0
      src/locales/en.js
  2. 2 0
      src/locales/zh-CN.js
  3. 81 12
      src/views/enterprise/interview/index.vue

+ 2 - 0
src/locales/en.js

@@ -37,6 +37,7 @@ export default {
     clearSelectedLocation: 'Clear Selected Location',
     Unrestricted: 'Unrestricted',
     other: 'Other',
+    cleanUp: 'Clean Up',
     pleaseSelect: 'Please select',
   },
   sys: {
@@ -101,6 +102,7 @@ export default {
     canceled: 'Canceled',
     offlineInterview: 'Offline Interview',
     onlineInterview: 'Online Interview',
+    today: 'Today',
   },
   position: {
     moreBtn: 'View More Positions',

+ 2 - 0
src/locales/zh-CN.js

@@ -37,6 +37,7 @@ export default {
     clearSelectedLocation: '清空已选位置',
     Unrestricted: '不限',
     other: '其他',
+    cleanUp: '清除',
     pleaseSelect: '请选择',
   },
   sys: {
@@ -101,6 +102,7 @@ export default {
     canceled: '已取消',
     offlineInterview: '线下面试',
     onlineInterview: '线上面试',
+    today: '今天',
   },
   position: {
     moreBtn: '查看更多职位',

+ 81 - 12
src/views/enterprise/interview/index.vue

@@ -1,16 +1,59 @@
 <!-- 面试 -->
 <template>
   <v-card class="pa-5" style="height: 100%;font-size: 14px;">
-    <div>123</div>
+    <div class="d-flex align-center">
+      <div class="d-flex mb-3">
+        <!-- 职位 -->
+        <v-select 
+          v-model="positionValue" 
+          :items="positionItems" 
+          density="compact" 
+          variant="outlined" 
+          item-title="label" 
+          item-value="value" 
+          hide-details 
+          color="primary"
+          style="width: 150px;"
+          class="mr-3"
+          @update:model-value="handlePositionChange"
+        ></v-select>
+        <!-- 状态 -->
+        <v-select 
+          v-model="stateValue" 
+          :items="stateItems" 
+          density="compact" 
+          variant="outlined" 
+          item-title="label" 
+          item-value="value" 
+          hide-details 
+          color="primary"
+          style="width: 150px;"
+          @update:model-value="handleStateChange"
+        ></v-select>
+      </div>
+      <!-- <div>456</div>
+      <div>789</div> -->
+    </div>
+    <v-divider class="mb-3"></v-divider>
     <div class="d-flex">
-      <v-date-picker
-        v-model="value1"
-        color="primary"
-        show-adjacent-months
-        :hide-header="true"
-        @update:modelValue="handleCurrentChange"
-        class="mr-3"
-      ></v-date-picker>
+      <div>
+        <div class="d-flex justify-space-between color999 px-5">
+          <div v-if="selectDateValue">
+            <span>{{ timesTampChange(selectDateValue).slice(0, 10) }}</span>
+            <span class="defaultLink ml-2" @click="selectDateValue = null">{{ $t('common.cleanUp') }}</span>
+          </div>
+          <div v-else class="color999">--</div>
+          <v-btn color="primary" variant="text" size="small" @click="selectDateValue = new Date()">{{ $t('interview.today') }}</v-btn>
+        </div>
+        <v-date-picker
+          v-model="selectDateValue"
+          color="primary"
+          show-adjacent-months
+          :hide-header="true"
+          @update:modelValue="handleCurrentChange"
+          class="mr-3"
+        ></v-date-picker>
+      </div>
       <v-divider style="height: auto;" class="mr-5" vertical></v-divider>
       <div style="flex: 1;">
         <div
@@ -61,8 +104,8 @@
 </template>
 
 <script setup>
-import { ref } from 'vue';
-
+import { timesTampChange } from '@/utils/date'
+import { ref } from 'vue'
 defineOptions({ name: 'enterprise-interview'})
 
 const dataList = ref([
@@ -87,17 +130,43 @@ const dataList = ref([
   },
 ])
 
-const value1 = ref(null) // new Date(); new Date('2018-03-02')
+const selectDateValue = ref(null) // new Date(); new Date('2018-03-02')
 const handleCurrentChange = (val, val1) => {
   console.log('1', val, val1)
 }
 
+// 职位
+const positionValue = ref('0')
+const positionItems = ref([
+  { label: '全部职位', value: '0' },
+  { label: '软件测试(10-11K)', value: '1' },
+])
+const handlePositionChange = (val) => {
+  console.log('1', val)
+}
+// 状态
+const stateValue = ref('0')
+const stateItems = ref([
+  { label: '全部状态', value: '0' },
+  { label: '待接受', value: '1' },
+  { label: '待面试', value: '1' },
+  { label: '即将面试', value: '1' },
+  { label: '面试时间到', value: '1' },
+  { label: '已完成', value: '1' },
+  { label: '待反馈', value: '1' },
+  { label: '已反馈', value: '1' },
+])
+const handleStateChange = (val) => {
+  console.log('1', val)
+}
 </script>
 
 <style scoped lang="scss">
 .fz14 { font-size: 14px; }
 .fz15 { font-size: 15px; }
 .fz16 { font-size: 16px; }
+.color666 { color: #666; }
+.color999 { color: #999; }
 .primaryColor { color: var(--v-primary-base); }
 .listItem {
   cursor: pointer;