bugfix emit saveFormOnTheFly and add newly created contact to suggestion list immediately

This commit is contained in:
2022-01-24 14:24:56 +01:00
parent 256c5688a0
commit 0f2cbbe553
4 changed files with 19 additions and 13 deletions

View File

@@ -60,6 +60,7 @@
v-bind:item="item"
v-bind:search="search"
v-bind:type="checkUniq"
@saveFormOnTheFly="saveFormOnTheFly"
@updateSelected="updateSelected">
</person-suggestion>
@@ -259,15 +260,15 @@ export default {
result: entity
}
this.search.priorSuggestion = suggestion;
console.log('search priorSuggestion', this.search.priorSuggestion);
// console.log('search priorSuggestion', this.search.priorSuggestion);
} else {
this.search.priorSuggestion = {};
}
},
saveFormOnTheFly({ type, data }) {
console.log('saveFormOnTheFly from addPersons, type', type, ', data', data);
// console.log('saveFormOnTheFly from addPersons, type', type, ', data', data);
if (type === 'person') {
console.log('type person with', data);
// console.log('type person with', data);
postPerson(data)
.then(person => new Promise((resolve, reject) => {
console.log('onthefly create: post person', person);
@@ -276,10 +277,10 @@ export default {
}));
}
else if (type === 'thirdparty') {
console.log('type thirdparty with', data);
// console.log('type thirdparty with', data);
postThirdparty(data)
.then(thirdparty => new Promise((resolve, reject) => {
console.log('onthefly create: post thirdparty', thirdparty);
// console.log('onthefly create: post thirdparty', thirdparty);
this.newPriorSuggestion(thirdparty);
resolve();
}));

View File

@@ -18,6 +18,7 @@
<suggestion-third-party
v-if="item.result.type === 'thirdparty'"
@saveFormOnTheFly="emitEvent"
v-bind:item="item">
</suggestion-third-party>
@@ -47,7 +48,7 @@ export default {
'search',
'type'
],
emits: ['updateSelected'],
emits: ['updateSelected', 'saveFormOnTheFly'],
computed: {
selected: {
set(value) {
@@ -65,6 +66,9 @@ export default {
methods: {
setValueByType(value, type) {
return (type === 'radio')? [value] : value;
},
emitEvent({data, type}) {
this.$emit('saveFormOnTheFly', {type: type, data: data})
}
}
};

View File

@@ -25,6 +25,7 @@
</badge-entity>
<on-the-fly v-if="item.result.kind === 'company'"
v-bind:parent="item.result"
@saveFormOnTheFly="emitEvent"
action="addContact"
></on-the-fly>
<on-the-fly
@@ -58,6 +59,7 @@ export default {
BadgeEntity
},
props: ['item'],
emits: ['saveFormOnTheFly'],
i18n,
computed: {
hasAddress() {
@@ -81,6 +83,11 @@ export default {
return null;
}
},
methods: {
emitEvent({data, type}) {
this.$emit('saveFormOnTheFly', {type: type, data: data})
}
}
}
</script>