WIP Закончила валидацию

This commit is contained in:
Daria Golova
2023-04-21 15:52:18 +03:00
parent 4763d2259d
commit c2abfcc85d
3 changed files with 28 additions and 11 deletions

View File

@@ -53,11 +53,11 @@
:standout="!isEdit",
:outlined="isEdit",
:mask="field?.inputMask",
:rule="field.rules",
:rule="[(val) => !personDataField.includes(field.key) ? checkPassportFields(val, field.rules) : field.rules(val)]",
:autogrow="field.key === 'issued_by_org'"
)
.icon-copy.my-auto.text-lg.label-field(
v-if="checkCopiedFields(field.key)",
v-if="checkCopiedFields(field.key) && !!docData[data.dataKey][field.key]",
@click="copyValue(docData[data.dataKey][field.key])"
)
</template>
@@ -127,8 +127,24 @@ export default {
initialDocData() {
return this.$store.state.medical?.documents;
},
passportFields() {
let excludedFields = ["photo", "id"];
return Object.keys(this.docData.passport).filter(
(key) => !excludedFields.includes(key)
);
},
},
methods: {
checkPassportFields(val, defaultRule) {
if (this.passportFields.every((elem) => !this.docData.passport[elem])) {
this.$refs.documentForm
.getValidationComponents()
.filter((elem) => !this.personDataField.includes(elem.name))
.forEach((elem) => elem.resetValidation());
return true;
}
return defaultRule(val);
},
removeImage(docKey, field) {
this.docData[docKey][field] = {};
this.isCheckChange = true;
@@ -145,6 +161,7 @@ export default {
this.initialDocData?.passport?.issued_by_date;
this.isEdit = false;
this.isCheckChange = false;
this.$refs.documentForm.resetValidation();
},
openEdit() {
this.isEdit = true;
@@ -172,7 +189,6 @@ export default {
});
this.addErrorNotification(error?.title, error?.message);
});
this.cancelEdit();
} else {
let passportFormData = new FormData();
let documentsFormData = new FormData();
@@ -222,6 +238,7 @@ export default {
this.$store.dispatch("getMedicalCardData");
this.isEdit = false;
this.isCheckChange = false;
this.$refs.form.resetValidation();
});
}
});