|
@@ -2,7 +2,7 @@
|
|
|
<a-modal :visible="visible" :title="editMode ? $t('customer.editCustomer') : $t('customer.addCustomer')"
|
|
|
:loading="loading" @ok="handleSubmit" @cancel="handleCancel" :width="800" :okText="$t('form.Confirm')"
|
|
|
:cancelText="$t('form.Cancel')">
|
|
|
- <a-tabs>
|
|
|
+ <a-tabs v-model:active-key="activeKey" lazy-load>
|
|
|
<!-- 基本信息 Tab -->
|
|
|
<a-tab-pane key="1" :title="$t('customer.basicInfo')">
|
|
|
<a-form :model="formData" :rules="rules" ref="formRef" :label-col-props="{ span: 6 }"
|
|
@@ -31,7 +31,7 @@
|
|
|
show-word-limit />
|
|
|
</a-form-item>
|
|
|
<!-- Password -->
|
|
|
- <a-form-item field="password" :label="$t('customer.password')" required validate-trigger="blur">
|
|
|
+ <a-form-item :label="$t('customer.password')" required validate-trigger="blur">
|
|
|
<a-input-password v-model="formData.password" :placeholder="$t('customer.enterPassword')" :max-length="60"
|
|
|
show-word-limit />
|
|
|
<a-button type="primary" @click="generatePassword">{{ $t('customer.generatePassword') }}</a-button>
|
|
@@ -59,7 +59,7 @@
|
|
|
<a-radio :value="item.value" v-for="item in userTypes">{{
|
|
|
item.value == 1 ? $t('customer.status.normal') : (item.value == 2 ? $t('customer.status.disabled') :
|
|
|
(item.value == 3 ? $t('customer.status.pending') : $t('customer.status.suspended')))
|
|
|
- }} </a-radio>
|
|
|
+ }} </a-radio>
|
|
|
</a-radio-group>
|
|
|
</a-form-item>
|
|
|
</a-form>
|
|
@@ -214,6 +214,7 @@ const props = defineProps({
|
|
|
const invoiceList = ref([])
|
|
|
const roles = ref([])
|
|
|
const userTypes = ref([])
|
|
|
+const activeKey = ref(null)
|
|
|
watch(
|
|
|
() => props.editData,
|
|
|
(newVal) => {
|
|
@@ -294,7 +295,7 @@ const rules = {
|
|
|
userName: [{ required: true, message: t('customer.enterAccountNumber') }],
|
|
|
state: [{ required: true, message: t('customer.stateType') }],
|
|
|
name: [{ required: true, message: t('customer.nameType') }],
|
|
|
- password: [{ required: true, message: t('customer.passwordRequired') }],
|
|
|
+ // password: [{ required: true, message: t('customer.passwordRequired') }],
|
|
|
// roleIds: [{required: true, message: t('customer.roleIdsType')}],
|
|
|
// userType: [{required: true, message: t('customer.userTypeType')}],
|
|
|
phone: [{ required: true, message: t('customer.phoneType') }],
|
|
@@ -322,29 +323,32 @@ const rules = {
|
|
|
|
|
|
|
|
|
const handleSubmit = () => {
|
|
|
- formRef.value.validate(async (errors) => {
|
|
|
- formData.value.password = encryptByDES(formData.value.password);
|
|
|
- if (!errors) {
|
|
|
- formData.value.password = encryptByDES(formData.value.password);
|
|
|
- formData.value.amountWarn = Number(formData.value.amountWarn);
|
|
|
- formData.value.warnPhone = String(formData.value.warnPhone);
|
|
|
- formData.value.warnEmail = String(formData.value.warnEmail);
|
|
|
- let response;
|
|
|
- if (props.editMode) {
|
|
|
- response = await updateCustomer(formData.value);
|
|
|
- } else {
|
|
|
- response = await addCustomer(formData.value);
|
|
|
- }
|
|
|
- if (response.code === 200) {
|
|
|
- Message.success(props.editMode ? t('customer.updateSuccess') : t('customer.addSuccess'));
|
|
|
- emit('submit', true);
|
|
|
- emit('update:visible', false);
|
|
|
- } else {
|
|
|
- Message.error(response.message || (props.editMode ? t('customer.updateFailed') : t('customer.addFailed')));
|
|
|
- }
|
|
|
+ if (activeKey.value != 5 && !props.editData?.id) {
|
|
|
+ Message.error('请继续填写下一步骤')
|
|
|
+ } else {
|
|
|
+ formRef.value.validate(async (values,errors) => {
|
|
|
+ if (!errors) {
|
|
|
+ formData.value.password = encryptByDES(formData.value.password);
|
|
|
+ formData.value.amountWarn = Number(formData.value.amountWarn);
|
|
|
+ formData.value.warnPhone = String(formData.value.warnPhone);
|
|
|
+ formData.value.warnEmail = String(formData.value.warnEmail);
|
|
|
+ if (props.editMode) {
|
|
|
+ formData.value.password = ''
|
|
|
+ response = await updateCustomer(formData.value);
|
|
|
+ } else {
|
|
|
+ response = await addCustomer(formData.value);
|
|
|
+ }
|
|
|
+ if (response.code === 200) {
|
|
|
+ Message.success(props.editMode ? t('customer.updateSuccess') : t('customer.addSuccess'));
|
|
|
+ emit('submit', true);
|
|
|
+ emit('update:visible', false);
|
|
|
+ } else {
|
|
|
+ Message.error(response.message || (props.editMode ? t('customer.updateFailed') : t('customer.addFailed')));
|
|
|
+ }
|
|
|
|
|
|
- }
|
|
|
- });
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
};
|
|
|
|
|
|
const handleCancel = () => {
|