|
@@ -28,7 +28,7 @@
|
|
|
<el-form-item label="职级(英)" prop="level_en">
|
|
|
<el-input v-model="formData.level_en" placeholder="请输入职级名称(英)" />
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="标签状态" prop="status">
|
|
|
+ <el-form-item label="状态" prop="status">
|
|
|
<el-radio-group v-model="formData.status">
|
|
|
<el-radio
|
|
|
v-for="dict in statusOptions"
|
|
@@ -86,10 +86,10 @@ const formRules = reactive({
|
|
|
})
|
|
|
|
|
|
/** 打开弹窗 */
|
|
|
-// const valueKeys = ['name', 'category', 'status', 'description']
|
|
|
-// const editItemData = ref({})
|
|
|
+const valueKeys = ['department_zh', 'department_en', 'position_zh', 'position_en', 'position_abbr', 'level_zh', 'level_en', 'status']
|
|
|
+const editItemData = ref({})
|
|
|
const open = async (type, data) => {
|
|
|
- // editItemData.value = {}
|
|
|
+ editItemData.value = {}
|
|
|
dialogVisible.value = true
|
|
|
dialogTitle.value = t('action.' + type)
|
|
|
formType.value = type
|
|
@@ -98,7 +98,7 @@ const open = async (type, data) => {
|
|
|
// 修改时,设置数据
|
|
|
if (data && Object.keys(data).length) {
|
|
|
formData.value = _.cloneDeep(data)
|
|
|
- // valueKeys.forEach(key => editItemData.value[key] = data[key])
|
|
|
+ valueKeys.forEach(key => editItemData.value[key] = data[key])
|
|
|
}
|
|
|
}
|
|
|
defineExpose({ open }) // 提供 open 方法,用于打开弹窗
|
|
@@ -110,17 +110,13 @@ const submitForm = async () => {
|
|
|
if (!formRef) return
|
|
|
await formRef.value.validate()
|
|
|
|
|
|
- // const params = {
|
|
|
- // status: formData.value.status,
|
|
|
- // category: formData.value.category,
|
|
|
- // description: formData.value.description,
|
|
|
- // name: formData.value.name
|
|
|
- // }
|
|
|
- // // 更新标签时,至少需要提供一个要更新的项
|
|
|
- // if (formType.value === 'update') {
|
|
|
- // const isEqual = _.isEqual(params, editItemData.value)
|
|
|
- // if (isEqual) return message.warning('请修改任意项后再提交!')
|
|
|
- // }
|
|
|
+ // 更新标签时,至少需要提供一个要更新的项
|
|
|
+ const params = {}
|
|
|
+ if (formType.value === 'update') {
|
|
|
+ valueKeys.forEach(key => params[key] = formData.value[key])
|
|
|
+ const isEqual = _.isEqual(params, editItemData.value)
|
|
|
+ if (isEqual) return message.warning('请修改任意项后再提交!')
|
|
|
+ }
|
|
|
|
|
|
// 提交请求
|
|
|
formLoading.value = true
|
|
@@ -129,8 +125,7 @@ const submitForm = async () => {
|
|
|
await talentPositionApi.createHotelPosition(formData.value)
|
|
|
message.success(t('common.createSuccess'))
|
|
|
} else {
|
|
|
- const { id, ...rest } = formData.value
|
|
|
- await talentPositionApi.updateHotelPosition(id, rest)
|
|
|
+ await talentPositionApi.updateHotelPosition(formData.value.id, params)
|
|
|
message.success(t('common.updateSuccess'))
|
|
|
}
|
|
|
dialogVisible.value = false
|