Browse Source

修改

dev-V1.10.2-temp
wangmingyong@163.com 3 months ago
parent
commit
3c01824193
  1. 2
      zdxt-web-client/zdxt-efcode-enforcement-app/src/components/enforcement/register/RegisterPopups.vue
  2. 15
      zdxt-web-client/zdxt-efcode-enforcement-app/src/util/util.js
  3. 74
      zdxt-web-client/zdxt-efcode-enforcement-app/src/views/enforcement/enforce/enforcementRegister.vue

2
zdxt-web-client/zdxt-efcode-enforcement-app/src/components/enforcement/register/RegisterPopups.vue

@ -283,7 +283,7 @@ const handleSelectPerson = (person) => {
// 转换字段名称,将接口返回的 userName 转换为 name,phonenumber 转换为 id
emit('selectPerson', {
name: person.userName || person.name || '',
id: person.mobileNumber || person.id || ''
id: person.lawCertificateNum || person.mobileNumber || ''
});
localPersonPopup.value = false;
};

15
zdxt-web-client/zdxt-efcode-enforcement-app/src/util/util.js

@ -182,4 +182,17 @@ const formatEnforcer = (item) => {
return enforcers;
};
export { setGoodsNum, isObject, comparisonObject, isElementHidden, formattedTimeYYYYmmdd, formattedTime, getDeviceType, formattedDate, formatEnforcer, formatTime };
/**
* 电话号码脱敏处理
* 保留前3位和后4位,中间用 4 个 * 替换
* @param {string|number} phone 原始电话号码
* @returns {string} 脱敏后的电话号码,如 138****5678
*/
const maskPhone = (phone) => {
if (!phone) return '';
const str = String(phone);
if (str.length < 7) return str;
return str.substring(0, 3) + '****' + str.substring(str.length - 4);
};
export { setGoodsNum, isObject, comparisonObject, isElementHidden, formattedTimeYYYYmmdd, formattedTime, getDeviceType, formattedDate, formatEnforcer, formatTime, maskPhone };

74
zdxt-web-client/zdxt-efcode-enforcement-app/src/views/enforcement/enforce/enforcementRegister.vue

@ -7,7 +7,7 @@
</div> -->
<!-- 表单主体 -->
<van-form @submit="onSubmit" scroll-to-error class="page-content">
<van-form ref="formRef" @submit="onSubmit" scroll-to-error class="page-content">
<!-- 企业信息组件 -->
<EnterpriseInfoSection :enterprise-data="enterpriseData" :is-sign-mode="isSignMode"
@open-picker="showPopups.enterprise = true" />
@ -54,6 +54,7 @@ import { ref, reactive, computed, onMounted } from 'vue';
import { useRouter, useRoute } from 'vue-router';
import { showConfirmDialog, showSuccessToast, showToast } from 'vant';
import { loadDict } from '@/util/dictUtil';
import { maskPhone } from '@/util/util';
import { saveEnfRegistration, submitEnfRegistration, addNonRegistration, getEnforcementRegistrationDetailById, getSystemConfig } from '@/api/enforcement/index';
import EnterpriseInfoSection from '@/components/enforcement/register/EnterpriseInfoSection.vue';
import EnforcementInfoSection from '@/components/enforcement/register/EnforcementInfoSection.vue';
@ -156,13 +157,20 @@ const selectedPersonsList = computed(() => {
const list = [];
// 添加默认执法人员
if (enforcementPersons.value[0]) {
list.push({ id: enforcementPersons.value[0].id, name: enforcementPersons.value[0].name, userId: enforcementPersons.value[0].userId });
list.push(
{
id: enforcementPersons.value[0].id,
name: enforcementPersons.value[0].name,
userId: enforcementPersons.value[0].userId || '',
phone: maskPhone(enforcementPersons.value[0].phonenumber || ''),
lawCertificateNum: enforcementPersons.value[0].lawCertificateNum || ''
});
}
// 添加额外执法人员
additionalPersons.value.forEach(p => {
if (p.id || p.name) {
list.push({ id: p.id, name: p.name, userId: p.userId });
}
list.push({ id: p.id, name: p.name, userId: p.userId || '', lawCertificateNum: p.lawCertificateNum || '' });
}
});
return list;
});
@ -186,6 +194,7 @@ const handleOpenPersonPicker = (index) => {
// 选择人员
const handleSelectPerson = (person) => {
console.log(person);
if (currentEditIndex.value === -1) {
// 新增人员
additionalPersons.value.push({ name: person.name, id: person.id, phonenumber: person.id });
@ -441,29 +450,41 @@ const getCurrentDateTime = () => {
};
// 保存
const formRef = ref();
const handleSave = () => {
showConfirmDialog({
title: '确认保存',
message: '确认保存吗?',
width: '80%',
}).then(() => {
const payload = buildSubmitPayload();
saveEnfRegistration(payload, (res) => {
if (res.code === 200 || res.code === 0) {
showSuccessToast('保存成功');
sessionStorage.removeItem('enterpriseScanData');
sessionStorage.removeItem('outOfCityEnterprise');
sessionStorage.removeItem('scanReason');
router.replace('/enforcement/enforcementList');
} else {
showToast(res.msg || '保存失败');
}
}, (err) => {
console.error('保存接口失败', err);
showToast('保存失败');
// 验证执法人员数量
const totalPersons = enforcementPersons.value.length + additionalPersons.value.length;
if (totalPersons < 2) {
showToast('人员至少需要2人');
return;
}
// 验证表单必填项
formRef.value?.validate().then(() => {
showConfirmDialog({
title: '确认保存',
message: '确认保存吗?',
width: '80%',
}).then(() => {
const payload = buildSubmitPayload();
saveEnfRegistration(payload, (res) => {
if (res.code === 200 || res.code === 0) {
showSuccessToast('保存成功');
sessionStorage.removeItem('enterpriseScanData');
sessionStorage.removeItem('outOfCityEnterprise');
sessionStorage.removeItem('scanReason');
router.replace('/enforcement/enforcementList');
} else {
showToast(res.msg || '保存失败');
}
}, (err) => {
console.error('保存接口失败', err);
showToast('保存失败');
});
}).catch(() => {
// 用户取消
});
}).catch(() => {
// 用户取消
showToast('请完善必填信息');
});
};
@ -710,8 +731,11 @@ onMounted(() => {
let useCommon = JSON.parse(useCommonStr);;
const name = useCommon.userName || '';
const phonenumber = useCommon.phonenumber || '';
const lawCertificateNum = useCommon.lawCertificateNum || '';
if (name || phonenumber) {
enforcementPersons.value = [{ name, phonenumber, userId: useCommon.userId || '' }];
enforcementPersons.value = [
{ name, phonenumber: maskPhone(phonenumber || ''), userId:useCommon.userId || '',lawCertificateNum }
];
}
formData.enforcementUnit = useCommon.bureauUnitName || '';

Loading…
Cancel
Save