|
@@ -12,7 +12,8 @@
|
|
<t-row :gutter="[0, 20]">
|
|
<t-row :gutter="[0, 20]">
|
|
<t-col :span="4">
|
|
<t-col :span="4">
|
|
<t-form-item label="人员档案编号">
|
|
<t-form-item label="人员档案编号">
|
|
- <span>{{ formData.code }}</span>
|
|
|
|
|
|
+ <span v-if="isEdit">{{ formData.code }}</span>
|
|
|
|
+ <span>系统生成</span>
|
|
</t-form-item>
|
|
</t-form-item>
|
|
</t-col>
|
|
</t-col>
|
|
<t-col :span="4">
|
|
<t-col :span="4">
|
|
@@ -72,7 +73,7 @@
|
|
</t-form-item>
|
|
</t-form-item>
|
|
</t-col>
|
|
</t-col>
|
|
<t-col :span="12">
|
|
<t-col :span="12">
|
|
- <t-form-item label="上传照片">
|
|
|
|
|
|
+ <t-form-item label="上传照片" name="basePhotoPath">
|
|
<t-upload
|
|
<t-upload
|
|
ref="uploadRef"
|
|
ref="uploadRef"
|
|
v-model="photos"
|
|
v-model="photos"
|
|
@@ -86,6 +87,7 @@
|
|
}"
|
|
}"
|
|
:size-limit="{ size: 2, unit: 'MB' }"
|
|
:size-limit="{ size: 2, unit: 'MB' }"
|
|
:request-method="requestMethod"
|
|
:request-method="requestMethod"
|
|
|
|
+ @change="fileChange"
|
|
>
|
|
>
|
|
</t-upload>
|
|
</t-upload>
|
|
</t-form-item>
|
|
</t-form-item>
|
|
@@ -167,7 +169,7 @@ import { ref, computed } from 'vue';
|
|
import { MessagePlugin } from 'tdesign-vue-next';
|
|
import { MessagePlugin } from 'tdesign-vue-next';
|
|
import useClearDialog from '@/hooks/useClearDialog';
|
|
import useClearDialog from '@/hooks/useClearDialog';
|
|
import useAuthenRole from '@/hooks/useAuthenRole';
|
|
import useAuthenRole from '@/hooks/useAuthenRole';
|
|
-import { personFilesEditApi, personFilesCodeApi } from '@/api/resource-guard';
|
|
|
|
|
|
+import { personFilesEditApi } from '@/api/resource-guard';
|
|
import { fileUploadApi } from '@/api/user';
|
|
import { fileUploadApi } from '@/api/user';
|
|
import { GENDER_TYPE, EDUCATION_TYPE } from '@/config/constants';
|
|
import { GENDER_TYPE, EDUCATION_TYPE } from '@/config/constants';
|
|
import { getFileMD5 } from '@/utils/crypto';
|
|
import { getFileMD5 } from '@/utils/crypto';
|
|
@@ -357,6 +359,10 @@ const areaChange = (data) => {
|
|
formData.area = data[2];
|
|
formData.area = data[2];
|
|
};
|
|
};
|
|
|
|
|
|
|
|
+const fileChange = (data) => {
|
|
|
|
+ if (!data.length) formData.basePhotoPath = '';
|
|
|
|
+};
|
|
|
|
+
|
|
const save = async () => {
|
|
const save = async () => {
|
|
const valid = await formRef.value.validate();
|
|
const valid = await formRef.value.validate();
|
|
if (valid !== true) return;
|
|
if (valid !== true) return;
|
|
@@ -371,10 +377,9 @@ const save = async () => {
|
|
|
|
|
|
const dialogOpened = async () => {
|
|
const dialogOpened = async () => {
|
|
if (!props.curRow) {
|
|
if (!props.curRow) {
|
|
- const res = await personFilesCodeApi();
|
|
|
|
- formData.code = res || '';
|
|
|
|
areaInfo.value = ['', '', ''];
|
|
areaInfo.value = ['', '', ''];
|
|
photos.value = [];
|
|
photos.value = [];
|
|
|
|
+ formData.code = undefined;
|
|
} else {
|
|
} else {
|
|
areaInfo.value = [formData.province, formData.city, formData.area];
|
|
areaInfo.value = [formData.province, formData.city, formData.area];
|
|
photos.value = [{ url: props.curRow.basePhotoPreviewPath }];
|
|
photos.value = [{ url: props.curRow.basePhotoPreviewPath }];
|