Browse Source

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

lifanagju_citu 4 months ago
parent
commit
bb8c8ca05a

+ 1 - 1
src/config/axios/service.js

@@ -141,7 +141,7 @@ service.interceptors.request.use(
         config
         // browserInfo: getBrowserInfo()
       }
-      console.log('加密参数', content)
+      // console.log('加密参数', content)
       errorData.push({
         time: header.timestamp,
         url: config.url,

+ 4 - 4
src/layout/enterprise.vue

@@ -3,8 +3,8 @@
     <Headers class="headers"></Headers>
     <div class="content d-flex">
       <side class="content-sticky" v-if="!router.currentRoute.value?.meta?.hideSide"></side>
-      <div class="content-box d-flex flex-column" :style="`width: ${ !isInWhiteList(route.path, whiteList) ? 'calc(100vw - 247px)' : '100%'}`">
-        <div v-if="!isInWhiteList(route.path, whiteList)" class="breadcrumbs_sticky">
+      <div class="content-box d-flex flex-column" :style="`width: ${ !isInWhiteList(route.path) ? 'calc(100vw - 230px)' : '100%'}`">
+        <div v-if="!isInWhiteList(route.path)" class="breadcrumbs_sticky">
           <div class=" d-flex align-center justify-space-between">
             <v-breadcrumbs :items="system.breadcrumbs" elevation="3">
               <template v-slot:item="{ item }">
@@ -15,7 +15,7 @@
           <v-divider></v-divider>
         </div>
         <div class="box pa-3">
-          <div v-if="!isInWhiteList(route.path, whiteList)" class="box-content">
+          <div v-if="!isInWhiteList(route.path)" class="box-content">
             <router-view :key="key"></router-view>
           </div>
           <div v-else class="full">
@@ -54,7 +54,7 @@ const whiteList = [
   '/recruit/enterprise/systemManagement/groupAccount/invite/1'
 ]
 // 查询是否在白名单内,在则不展示面包屑
-const isInWhiteList = (url, whiteList)=> {
+const isInWhiteList = (url)=> {
   const path = url.split('?')[0]
   for (const item of whiteList) {
     if (path.startsWith(item)) {

+ 1 - 0
src/views/recruit/enterprise/invoiceManagement/index.vue

@@ -9,6 +9,7 @@
       :isTools="true"
       :showPage="true"
       :total="total"
+      height="calc(100vh - 315px)"
       :page-info="query"
       @pageHandleChange="handleChangePage"
       @add="handle"

+ 87 - 84
src/views/recruit/enterprise/newlyAppointed/index.vue

@@ -1,93 +1,96 @@
 <template>
-	<CtFilter :items="formItems" @reset="handleReset" @search="handleSearch" />
+	<div>
+		<CtFilter :items="formItems" @reset="handleReset" @search="handleSearch" />
 
-	<v-card class="mt-3" elevation="5">
-		<CtTable
-			:items="items"
-			class="pa-3"
-			:headers="headers"
-			:loading="loading"
-			:disable-sort="true"
-			:elevation="0"
-			:isTools="false"
-			:showPage="true"
-			:total="total"
-			:pageInfo="query"
-			itemKey="id"
-			@pageHandleChange="handleChangePage"
-		>
-			<template #workTerritory="{ item }">
-				<div class="ellipsis" style="max-width: 150px;">
-					{{ item.workTerritory }}
-					<v-tooltip activator="parent" location="top">{{ item.workTerritory }}</v-tooltip>
-				</div>
-			</template>
-			<template #workHistory="{ item }">
-				<div class="ellipsis" style="max-width: 150px;">
-					{{ item.workHistory }}
-					<v-tooltip activator="parent" location="top">{{ item.workHistory }}</v-tooltip>
-				</div>
-			</template>
-			<template #actions="{ item }">
-				<v-btn variant="text" color="primary" @click.stop="handleDetail(item)">详 情</v-btn>
-				<v-btn :disabled="!item.userPersonList || !item.userPersonList.length" variant="text" color="primary" @click.stop="handleContactInformation(item)">
-					联系方式
-				</v-btn>
-			</template>
-		</CtTable>
-	</v-card>
-
-	<v-navigation-drawer v-model="showDetail" absolute location="right" rounded temporary width="700" class="pa-5">
-		<div style="width: 300px; height: 300px; margin: 0 auto;">
-			<v-img :src="detail?.picUrl" width="300" height="300" />
-		</div>
-		<div class="mt-10" v-if="detail?.detailIntroduction" v-html="detail?.detailIntroduction.replace(/\n/g, '</br>')"></div>
-	</v-navigation-drawer>
+		<v-card elevation="5" class="mt-3">
+			<CtTable
+				:items="items"
+				class="pa-3"
+				:headers="headers"
+				:loading="loading"
+				:disable-sort="true"
+				:elevation="0"
+				:isTools="false"
+				height="calc(100vh - 400px)"
+				:showPage="true"
+				:total="total"
+				:pageInfo="query"
+				itemKey="id"
+				@pageHandleChange="handleChangePage"
+			>
+				<template #workTerritory="{ item }">
+					<div class="ellipsis" style="max-width: 150px;">
+						{{ item.workTerritory }}
+						<v-tooltip activator="parent" location="top">{{ item.workTerritory }}</v-tooltip>
+					</div>
+				</template>
+				<template #workHistory="{ item }">
+					<div class="ellipsis" style="max-width: 150px;">
+						{{ item.workHistory }}
+						<v-tooltip activator="parent" location="top">{{ item.workHistory }}</v-tooltip>
+					</div>
+				</template>
+				<template #actions="{ item }">
+					<v-btn variant="text" color="primary" @click.stop="handleDetail(item)">详 情</v-btn>
+					<v-btn :disabled="!item.userPersonList || !item.userPersonList.length" variant="text" color="primary" @click.stop="handleContactInformation(item)">
+						联系方式
+					</v-btn>
+				</template>
+			</CtTable>
+		</v-card>
 
-	<!-- 无权限提示 -->
-	<CtDialog :visible="showDialog" :widthType="4" :footer="false" titleClass="text-h6" title="系统提示" @close="showDialog = false">
-		<div class="d-flex align-center flex-column">
-			<div class="color-warning">
-				<p>很抱歉,您当前没有权限查看门墩儿新任命的相关信息</p>
-				<p>请用微信扫描下方企业微信联系门墩儿管理员开通权限</p>
+		<v-navigation-drawer v-model="showDetail" absolute location="right" rounded temporary width="700" class="pa-5">
+			<div style="width: 300px; height: 300px; margin: 0 auto;">
+				<v-img :src="detail?.picUrl" width="300" height="300" />
 			</div>
-			<div style="width: 150px; height: 150px;">
-				<v-img src="https://minio.menduner.com/dev/menduner/contact.png"></v-img>
+			<div class="mt-10" v-if="detail?.detailIntroduction" v-html="detail?.detailIntroduction.replace(/\n/g, '</br>')"></div>
+		</v-navigation-drawer>
+
+		<!-- 无权限提示 -->
+		<CtDialog :visible="showDialog" :widthType="4" :footer="false" titleClass="text-h6" title="系统提示" @close="showDialog = false">
+			<div class="d-flex align-center flex-column">
+				<div class="color-warning">
+					<p>很抱歉,您当前没有权限查看门墩儿新任命的相关信息</p>
+					<p>请用微信扫描下方企业微信联系门墩儿管理员开通权限</p>
+				</div>
+				<div style="width: 150px; height: 150px;">
+					<v-img src="https://minio.menduner.com/dev/menduner/contact.png"></v-img>
+				</div>
+				<div class="text-center ml-5">潘青海先生(Peter Pan)</div>
 			</div>
-			<div class="text-center ml-5">潘青海先生(Peter Pan)</div>
-		</div>
-  </CtDialog>
+		</CtDialog>
 
-	<!-- 联系方式 -->
-	<CtDialog :visible="showContactDialog" title="当前联系方式匹配人员" :footer="false" widthType="0" @close="showContactDialog = false">
-		<CtTable
-			:loading="false"
-			:items="contactList"
-			:headers="contactHeaders"
-			:elevation="0"
-			:isTools="false"
-			:showPage="false"
-			itemKey="user.id"
-		>
-			<template #name="{ item }">
-				<div class="d-flex align-center cursor-pointer">
-          <v-badge
-            v-if="item?.person?.sex === '1' || item?.person?.sex === '2'"
-            bordered
-            offset-y="6"
-            :color="badgeColor(item)"
-            :icon="badgeIcon(item)">
-            <v-avatar size="40" :image="getUserAvatar(item.person.avatar, item.person.sex)"></v-avatar>
-          </v-badge>
-          <v-avatar v-else size="40" :image="getUserAvatar(item.person?.avatar, item.person?.sex)"></v-avatar>
-          <span class="ml-3">{{ item?.person?.name || item?.phone }}</span>
-        </div>
-			</template>
-			<template #actions="{ item }">
-				<v-btn variant="text" color="primary" @click.stop="handleContactInformation({ userPersonList: [item] })">联系方式</v-btn>
-			</template>
-		</CtTable>
-  </CtDialog>
+		<!-- 联系方式 -->
+		<CtDialog :visible="showContactDialog" title="当前联系方式匹配人员" :footer="false" widthType="0" @close="showContactDialog = false">
+			<CtTable
+				:loading="false"
+				:items="contactList"
+				:headers="contactHeaders"
+				:elevation="0"
+				:isTools="false"
+				:showPage="false"
+				itemKey="user.id"
+			>
+				<template #name="{ item }">
+					<div class="d-flex align-center cursor-pointer">
+						<v-badge
+							v-if="item?.person?.sex === '1' || item?.person?.sex === '2'"
+							bordered
+							offset-y="6"
+							:color="badgeColor(item)"
+							:icon="badgeIcon(item)">
+							<v-avatar size="40" :image="getUserAvatar(item.person.avatar, item.person.sex)"></v-avatar>
+						</v-badge>
+						<v-avatar v-else size="40" :image="getUserAvatar(item.person?.avatar, item.person?.sex)"></v-avatar>
+						<span class="ml-3">{{ item?.person?.name || item?.phone }}</span>
+					</div>
+				</template>
+				<template #actions="{ item }">
+					<v-btn variant="text" color="primary" @click.stop="handleContactInformation({ userPersonList: [item] })">联系方式</v-btn>
+				</template>
+			</CtTable>
+		</CtDialog>
+	</div>
 </template>
 
 <script setup>

+ 1 - 1
src/views/recruit/enterprise/resume/components/commonStyle.vue

@@ -10,7 +10,7 @@
   >
     <template v-slot:activator="{ isActive, props }">
       <v-btn
-        class="mr-3 py-0 px-2"
+        class="mr-3 py-0 px-2 font-size-16"
         density="comfortable"
         :append-icon="isActive ? 'mdi mdi-menu-up' : 'mdi mdi-menu-down'"
         color="primary" variant="tonal"

+ 6 - 6
src/views/recruit/enterprise/resume/components/screen.vue

@@ -147,12 +147,12 @@ const handleChangeBounty = (e) => {
   emit('change', e)
 }
 
-watch(
-  () => props.tab,
-  () => {
-    handleReset()
-  }
-)
+// watch(
+//   () => props.tab,
+//   () => {
+//     handleReset()
+//   }
+// )
 </script>
 
 <style scoped lang="scss">

+ 2 - 11
src/views/recruit/enterprise/resume/components/table.vue

@@ -6,9 +6,9 @@
       :headers="headers"
       :loading="false"
       :elevation="0"
-      height="60vh"
       :disableSort="true"
       :isTools="false"
+      height="calc(100vh - 360px)"
       :showPage="true"
       :total="total"
       :page-info="pageInfo"
@@ -35,15 +35,6 @@
       </template>
       <template #actions="{ item }">
         <v-btn color="primary" variant="text" @click="handlePreviewResume(item)">查看附件</v-btn>
-        <!-- <v-btn v-if="tab === 0" :color="item.jobClosed ? 'grey' : 'primary'" variant="text" @click="handleInterviewInvite(item)">邀请面试<v-tooltip v-if="item.jobClosed" activator="parent" location="top">职位已关闭</v-tooltip></v-btn>
-        <v-btn v-if="tab === 0" :color="item.jobClosed ? 'grey' : 'primary'" variant="text" @click="handleToCommunicate(item)">立即沟通<v-tooltip v-if="item.jobClosed" activator="parent" location="top">职位已关闭</v-tooltip></v-btn>
-        <v-btn color="primary" variant="text" @click="handleDownloadAttachment(item)">下载附件</v-btn>
-        <v-btn v-if="tab === 0 || tab === 1" color="primary" variant="text" @click="handleEliminate(item)">不合适</v-btn>
-        <v-btn v-if="!item.inTalentPool" color="primary" variant="text" @click="handleJoinToTalentPool(item)">加入储备</v-btn>
-        <v-btn v-if="tab === 1 && ['3', '4'].includes(item.status)" color="primary" variant="text" @click="handleEnterByEnterprise(item)">入职</v-btn>
-        <v-btn v-if="tab === 4" color="primary" variant="text" @click="handleCancelEliminate(item)">取消不合适</v-btn>
-        <v-btn v-if="tab === 2 && item?.job?.hire" color="primary" variant="text" @click="handleSettlement(item)">结算</v-btn> -->
-
         <v-menu v-if="actionItems(item).length">
           <template v-slot:activator="{ props }">
             <v-icon v-bind="props" class="mx-3" size="20" color="primary">mdi-dots-horizontal</v-icon>
@@ -96,7 +87,7 @@ import { formatName } from '@/utils/getText'
 
 const showTip = ref(false)
 const { t } = useI18n()
-const emit = defineEmits(['refresh'])
+const emit = defineEmits(['refresh', 'page'])
 const props = defineProps({
   tab: Number,
   items: Array,

+ 11 - 2
src/views/recruit/enterprise/resume/index.vue

@@ -2,7 +2,7 @@
 <template>
   <v-card class="pa-3 card-box">
     <div class="d-flex justify-space-between">
-      <v-tabs v-model="tab" align-tabs="start" color="primary" bg-color="#f7f8fa">
+      <v-tabs v-model="tab" align-tabs="start" color="primary" bg-color="#f7f8fa" @update:model-value="handleChangeTab">
         <v-tab v-for="k in tabList" :value="k.value" :key="k.value">{{ k.label }}</v-tab>
       </v-tabs>
       <TextInput v-model="textItems.value" :item="textItems" @appendInnerClick="handleSearch" @enter="handleSearch"></TextInput>
@@ -131,7 +131,7 @@ const handleScreenReset = () => {
     query.value.status = null
     query.value.type = null
   }
-  if (textItems.value.value) query.value.name = textItems.value.value
+  textItems.value.value = ''
   getList()
 }
 
@@ -147,6 +147,15 @@ const handleChangeBounty = (e) => {
   query.value.pageNo = 1
   getList()
 }
+
+const handleChangeTab = (val) => {
+  query.value.pageNo = 1
+  if (val === 0) {
+    query.value.status = null
+    query.value.type = null
+  } else query.value.status = val
+  getList()
+}
 </script>
 
 <style scoped lang="scss">

+ 1 - 0
src/views/recruit/enterprise/tradingOrder/components/trading/balance.vue

@@ -5,6 +5,7 @@
     :headers="headers"
     :loading="false"
     :elevation="0"
+    height="calc(100vh - 310px)"
     :isTools="false"
     :showPage="true"
     :total="total"

+ 1 - 0
src/views/recruit/enterprise/tradingOrder/components/trading/recharge.vue

@@ -6,6 +6,7 @@
     :loading="false"
     :elevation="0"
     :isTools="false"
+    height="calc(100vh - 310px)"
     :showPage="true"
     :total="total"
     :page-info="query"

+ 1 - 0
src/views/recruit/enterprise/tradingOrder/components/trading/transaction.vue

@@ -4,6 +4,7 @@
     :items="dataList"
     :headers="headers"
     :loading="false"
+    height="calc(100vh - 310px)"
     :elevation="0"
     :isTools="false"
     :showPage="true"

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

@@ -71,7 +71,7 @@ const handleSearch = async (val, key) => {
   pages.value.pageNo = 1
   query.value[key] = val
   dealRouteQuery(query.value)
-  await getCompanyData()
+  // await getCompanyData()
 }
 
 const inputChange = async({ idName: key, values }) => { // areaIds
@@ -83,7 +83,7 @@ const inputChange = async({ idName: key, values }) => { // areaIds
   }
   pages.value.pageNo = 1
   dealRouteQuery(query.value)
-  await getCompanyData()
+  // await getCompanyData()
 }
 
 const noParams = ref(true)
@@ -120,7 +120,7 @@ const handleClear = () => {
   }
   if (query.value.name || query.value.areaIds?.length) {
     dealRouteQuery(query.value)
-    getCompanyData()
+    // getCompanyData()
   } else {
     router.push(route.path)
     items.value = []

+ 3 - 3
src/views/recruit/personal/home/components/homeJobTypeCard/index.vue

@@ -34,9 +34,6 @@
     </v-card>
     <v-card v-if="rightObj.show" class="right-item-box elevation-5" :style="{'left': itemLeft + 'px'}">
       <div class="rightCard d-flex">
-        <div class="px-3 pt-2">
-          <v-icon color="primary" size="30" @click.stop="handleMouseLeave">mdi-close-circle-outline</v-icon>
-        </div>
         <div class="rightContent">
           <div
             v-if="!rightObj.data.children?.length"
@@ -51,6 +48,9 @@
           >
           {{ val.nameCn }}</div>
         </div>
+        <div class="px-3 pt-2">
+          <v-icon color="primary" size="40" @click.stop="handleMouseLeave">mdi-close-circle-outline</v-icon>
+        </div>
       </div>
     </v-card>
     <v-card height="392px" class="card rightCardBox">

+ 1 - 1
src/views/recruit/personal/position/components/conditionFilter/commonStyle.vue

@@ -10,7 +10,7 @@
   >
     <template v-slot:activator="{ isActive, props }">
       <v-btn
-        class="mr-3 py-0 px-2"
+        class="mr-3 py-0 px-2 font-size-16"
         :class="defineProps.btnClass"
         density="comfortable"
         :append-icon="isActive ? 'mdi mdi-menu-up' : 'mdi mdi-menu-down'"

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

@@ -119,7 +119,7 @@ const updateRouter = () => {
   query.date = new Date().getTime() // 用于前端刷新路由参数
   router.push({ path: route.path, query })
   pageInfo.pageNo = 1
-  getData()
+  // getData()
 }
 
 // 参数改变