Procházet zdrojové kódy

人才地图:标签管理相关字段调整

Xiao_123 před 1 měsícem
rodič
revize
99444c5a28

+ 1 - 1
src/views/menduner/system/talentMap/maintenance/examine/store.vue

@@ -198,7 +198,7 @@ const handleStore = async () => {
 
   const loading = ElLoading.service({
     lock: true,
-    text: '正在保存中...',
+    text: '正在入库中...',
     background: 'rgba(0, 0, 0, 0.7)'
   })
   try {

+ 6 - 6
src/views/menduner/system/talentMap/maintenance/labeling/LabelingForm copy.vue

@@ -44,7 +44,7 @@
 												class="mr-14px mt-14px"
 												@close="closeClick(item)"
 											>
-												{{ item.name }}
+												{{ item.name_zh }}
 											</el-tag>
 										</div>
 										<div v-else style="color: #777; text-align: center; line-height: 50px; margin-top: 12px;">请添加标签</div>
@@ -56,11 +56,11 @@
 											size="large"
 											type="primary"
 											class="mr-14px mt-14px"
-											:class="{'cursor-pointer': !talentSelectedTags.find(k => k.name === item.name)}"
-											:effect="talentSelectedTags.find(k => k.name === item.name) ? 'info' : 'default'"
+											:class="{'cursor-pointer': !talentSelectedTags.find(k => k.name_zh === item.name_zh)}"
+											:effect="talentSelectedTags.find(k => k.name_zh === item.name_zh) ? 'info' : 'default'"
 											@click="handleAdd(item)"
 										>
-											+ {{ item.name }}
+											+ {{ item.name_zh }}
 										</el-tag>
 									</div>
 								</div>
@@ -129,7 +129,7 @@ const getTalentTagById = async() => {
 	}
 	const tagData = await talentLabelingApi.getTalentTagById(id)
 	talentSelectedTags.value = tagData ? tagData.map((i) => {
-		return { id: i.talent, name: i.tag }
+		return { id: i.talent_pg_id, name_zh: i.name_zh }
 	}) : []
 }
 
@@ -283,7 +283,7 @@ const submitForm = async () => {
 
 	loading.value = true
 	const tags = talentSelectedTags.value.map(e => {
-		return { talent: talentItem.value.id, tag: e.name }
+		return { talent: talentItem.value.id, tag: e.name_zh }
 	})
 
   // 提交请求

+ 11 - 11
src/views/menduner/system/talentMap/maintenance/labeling/LabelingForm.vue

@@ -1,7 +1,7 @@
 <template>
   <Dialog title="人才标注" v-model="dialogVisible" class="!w-90%">
 		<el-row :gutter="20">
-			<el-col :span="9">
+			<el-col :span="10">
 				<div v-if="sourceList && sourceList.length > 0" class="!h-80vh overflow-y-auto">
 					<el-card v-for="val in sourceList" :key="val.id" class="mb-10px">
 						<template #header>
@@ -46,7 +46,7 @@
 					<el-empty description="暂无来源" />
 				</el-card>
 			</el-col>
-			<el-col :span="15">
+			<el-col :span="14">
 				<div class="!h-100% overflow-y-auto">
 					<el-tabs type="border-card">
 						<el-tab-pane label="人才信息">
@@ -58,8 +58,8 @@
 						</el-tab-pane>
 						<el-tab-pane label="人才标签">
 							<el-card shadow="never">
-								<div class="my-5">
-									<div class="mt-4 px-3 pb-3" style="border: 1px dashed #67c23a; border-radius: 4px;">
+								<div class="mb-5">
+									<div class="px-3 pb-3" style="border: 1px dashed #67c23a; border-radius: 4px;">
 										<div v-if="talentSelectedTags?.length">
 											<el-tag 
 												v-for="(item, index) in talentSelectedTags" 
@@ -70,23 +70,23 @@
 												class="mr-14px mt-14px"
 												@close="closeClick(item)"
 											>
-												{{ item.name }}
+												{{ item.name_zh }}
 											</el-tag>
 										</div>
 										<div v-else style="color: #777; text-align: center; line-height: 50px; margin-top: 12px;">请添加标签</div>
 									</div>
 									
-									<div :class="{'mt-5': talentSelectedTags?.length > 0}">
+									<div :class="{'mt-5': talentSelectedTags?.length > 0}" class="!h-60vh overflow-y-auto">
 										<el-tag 
 											v-for="(item, index) in tagList" :key="index"
 											size="large"
 											type="primary"
 											class="mr-14px mt-14px"
-											:class="{'cursor-pointer': !talentSelectedTags.find(k => k.name === item.name)}"
-											:effect="talentSelectedTags.find(k => k.name === item.name) ? 'info' : 'default'"
+											:class="{'cursor-pointer': !talentSelectedTags.find(k => k.name_zh === item.name_zh)}"
+											:effect="talentSelectedTags.find(k => k.name_zh === item.name_zh) ? 'info' : 'default'"
 											@click="handleAdd(item)"
 										>
-											+ {{ item.name }}
+											+ {{ item.name_zh }}
 										</el-tag>
 									</div>
 								</div>
@@ -151,7 +151,7 @@ const getTalentTagById = async() => {
 	}
 	const tagData = await talentLabelingApi.getTalentTagById(id)
 	talentSelectedTags.value = tagData ? tagData.map((i) => {
-		return { id: i.talent, name: i.tag }
+		return { id: i.talent_pg_id, name_zh: i.name_zh }
 	}) : []
 }
 
@@ -270,7 +270,7 @@ const submitForm = async () => {
 
 	loading.value = true
 	const tags = talentSelectedTags.value.map(e => {
-		return { talent: talentItem.value.id, tag: e.name }
+		return { talent: talentItem.value.id, tag: e.name_zh }
 	})
 
   // 提交请求

+ 1 - 1
src/views/menduner/system/talentMap/search/index.vue

@@ -95,7 +95,7 @@
 			<el-col :span="15">
 				<el-descriptions title="人才标签" :column="1" border>
 					<el-descriptions-item label="标签">
-						<el-tag v-for="k in talentTags" :key="k.talent" type="success" class="mr-10px my-10px">{{ k.tag }}</el-tag>
+						<el-tag v-for="k in talentTags" :key="k.talent" type="success" class="mr-10px my-10px">{{ k.name_zh }}</el-tag>
 					</el-descriptions-item>
 				</el-descriptions>
 

+ 16 - 16
src/views/menduner/system/talentMap/system/tag/TagForm.vue

@@ -7,14 +7,14 @@
       label-width="80px"
       v-loading="formLoading"
     >
-      <el-form-item label="标签名称" prop="name">
-        <el-input v-model="formData.name" placeholder="请输入标签名称" />
+      <el-form-item label="标签名称" prop="name_zh">
+        <el-input v-model="formData.name_zh" placeholder="请输入标签名称" />
       </el-form-item>
       <el-form-item label="标签分类" prop="category">
         <el-input v-model="formData.category" disabled placeholder="请输入标签分类" />
       </el-form-item>
-      <el-form-item label="标签描述" prop="description">
-        <el-input v-model="formData.description" type="textarea" :rows="3" placeholder="请输入标签描述" />
+      <el-form-item label="标签描述" prop="describe">
+        <el-input v-model="formData.describe" type="textarea" :rows="3" placeholder="请输入标签描述" />
       </el-form-item>
       <el-form-item label="标签状态" prop="status">
         <el-radio-group v-model="formData.status">
@@ -53,18 +53,18 @@ const formLoading = ref(false) // 表单的加载中:1)修改时的数据加
 const formType = ref('') // 表单的类型:create - 新增;update - 修改
 const formRef = ref() // 表单 Ref
 const formData = ref({
-  name: undefined,
-  description: undefined,
-  category: '人才',
+  name_zh: undefined,
+  describe: undefined,
+  category: '人才地图',
   status: 'active'
 })
 const formRules = reactive({
   status: [{ required: true, message: '标签状态不能为空', trigger: 'blur' }],
-  name: [{ required: true, message: '标签中文名称不能为空', trigger: 'blur' }]
+  name_zh: [{ required: true, message: '标签中文名称不能为空', trigger: 'blur' }]
 })
 
 /** 打开弹窗 */
-const valueKeys = ['name', 'category', 'status', 'description']
+const valueKeys = ['name_zh', 'category', 'status', 'describe']
 const editItemData = ref({})
 const open = async (type, data) => {
   editItemData.value = {}
@@ -75,8 +75,8 @@ const open = async (type, data) => {
 
   // 修改时,设置数据
   if (data && Object.keys(data).length) {
-    formData.value = data
-    valueKeys.forEach(key => editItemData.value[key] = data[key])
+    formData.value = _.cloneDeep(data)
+    valueKeys.forEach(key => editItemData.value[key] = formData.value[key])
     if (data.status === 'disable') formData.value.status = 'inactive'
   }
 }
@@ -92,8 +92,8 @@ const submitForm = async () => {
   const params = {
     status: formData.value.status,
     category: formData.value.category,
-    description: formData.value.description,
-    name: formData.value.name
+    describe: formData.value.describe,
+    name_zh: formData.value.name_zh
   }
   // 更新标签时,至少需要提供一个要更新的项
   if (formType.value === 'update') {
@@ -122,9 +122,9 @@ const submitForm = async () => {
 /** 重置表单 */
 const resetForm = () => {
   formData.value = {
-    name: undefined,
-    description: undefined,
-    category: '人才',
+    name_zh: undefined,
+    describe: undefined,
+    category: '人才地图',
     status: 'active'
   }
   formRef.value?.resetFields()

+ 3 - 3
src/views/menduner/system/talentMap/system/tag/index.vue

@@ -61,10 +61,10 @@
       <el-button type="success" plain @click="getList"><Icon icon="ep:refresh" class="mr-5px" /> 刷新</el-button>
     </div>
     <el-table v-loading="loading" :data="list" :stripe="true" row-key="id" height="73vh">
-      <el-table-column label="标签名称" align="center" prop="name" />
-      <el-table-column label="标签英文名称" align="center" prop="en_name" :show-overflow-tooltip="true" />
+      <el-table-column label="标签名称" align="center" prop="name_zh" />
+      <el-table-column label="标签英文名称" align="center" prop="name_en" :show-overflow-tooltip="true" />
       <el-table-column label="标签分类" align="center" prop="category" />
-      <el-table-column label="标签描述" align="center" prop="description" :show-overflow-tooltip="true" />
+      <el-table-column label="标签描述" align="center" prop="describe" :show-overflow-tooltip="true" />
       <el-table-column label="标签状态" align="center" prop="status">
         <template #default="scope">
           <el-tag :type="scope.row.status === 'active' ? 'success' : 'danger'">