This commit is contained in:
@@ -599,29 +599,33 @@ export default {
|
|||||||
vm.formState.readOnly = !vm.rights.change;
|
vm.formState.readOnly = !vm.rights.change;
|
||||||
window.$gz.eventBus.$on("menu-click", clickHandler);
|
window.$gz.eventBus.$on("menu-click", clickHandler);
|
||||||
|
|
||||||
|
let setDirty = false;
|
||||||
|
let setValid = true;
|
||||||
|
|
||||||
//id 0 means create a new record don't load one
|
//id 0 means create a new record don't load one
|
||||||
if (vm.$route.params.recordid != 0) {
|
if (vm.$route.params.recordid != 0) {
|
||||||
//is there already an obj from a prior operation?
|
//is there already an obj from a prior operation?
|
||||||
if (this.$route.params.obj) {
|
if (this.$route.params.obj) {
|
||||||
//yes, no need to fetch it
|
//yes, no need to fetch it
|
||||||
this.obj = this.$route.params.obj;
|
this.obj = this.$route.params.obj;
|
||||||
window.$gz.form.setFormState({
|
|
||||||
vm: vm,
|
|
||||||
loading: false
|
|
||||||
});
|
|
||||||
} else {
|
} else {
|
||||||
await vm.getDataFromApi(vm.$route.params.recordid); //let getdata handle loading
|
await vm.getDataFromApi(vm.$route.params.recordid); //let getdata handle loading
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
window.$gz.form.setFormState({
|
//Might be a duplicate and contain another record
|
||||||
vm: vm,
|
if (this.$route.params.obj) {
|
||||||
loading: false
|
this.obj = this.$route.params.obj;
|
||||||
});
|
this.obj.concurrency = undefined;
|
||||||
|
this.obj.id = 0;
|
||||||
|
setDirty = true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
window.$gz.form.setFormState({
|
window.$gz.form.setFormState({
|
||||||
vm: vm,
|
vm: vm,
|
||||||
dirty: false,
|
loading: false,
|
||||||
valid: true
|
dirty: setDirty,
|
||||||
|
valid: setValid
|
||||||
});
|
});
|
||||||
|
|
||||||
generateMenu(vm);
|
generateMenu(vm);
|
||||||
@@ -899,42 +903,15 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
async duplicate() {
|
async duplicate() {
|
||||||
let vm = this;
|
//Navigate to new record
|
||||||
if (!vm.canDuplicate || vm.$route.params.recordid == 0) {
|
this.$router.push({
|
||||||
return;
|
name: "vendor-edit",
|
||||||
}
|
params: {
|
||||||
window.$gz.form.setFormState({
|
recordid: 0,
|
||||||
vm: vm,
|
obj: this.obj
|
||||||
loading: true
|
|
||||||
});
|
|
||||||
let url = API_BASE_URL + "duplicate/" + vm.$route.params.recordid;
|
|
||||||
|
|
||||||
try {
|
|
||||||
window.$gz.form.deleteAllErrorBoxErrors(vm);
|
|
||||||
let res = await window.$gz.api.upsert(url);
|
|
||||||
if (res.error) {
|
|
||||||
vm.formState.serverError = res.error;
|
|
||||||
window.$gz.form.setErrorBoxErrors(vm);
|
|
||||||
} else {
|
|
||||||
//Navigate to new record
|
|
||||||
this.$router.push({
|
|
||||||
name: "vendor-edit",
|
|
||||||
params: {
|
|
||||||
recordid: res.data.id,
|
|
||||||
obj: res.data // Pass data object to new form
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
} catch (ex) {
|
});
|
||||||
window.$gz.errorHandler.handleFormError(ex, vm);
|
|
||||||
} finally {
|
|
||||||
window.$gz.form.setFormState({
|
|
||||||
vm: vm,
|
|
||||||
loading: false
|
|
||||||
});
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
|
|
||||||
AddressCopyToPostal() {
|
AddressCopyToPostal() {
|
||||||
let vm = this;
|
let vm = this;
|
||||||
vm.obj.postAddress = vm.obj.address;
|
vm.obj.postAddress = vm.obj.address;
|
||||||
|
|||||||
Reference in New Issue
Block a user