This commit is contained in:
2021-06-28 20:16:29 +00:00
parent 5ac4ce20ac
commit 06c1503b29
26 changed files with 65 additions and 78 deletions

View File

@@ -562,7 +562,7 @@ async function clickHandler(menuItem) {
case "new":
m.vm.$router.push({
name: "service-rate-edit",
params: { recordid: 0, new: true }
params: { recordid: 0 }
});
break;
case "duplicate":
@@ -676,7 +676,7 @@ function generateMenu(vm) {
});
}
if (vm.rights.change) {
if (vm.rights.change && vm.$route.params.recordid != 0) {
menuOptions.menuItems.push({
title: "Duplicate",
icon: "$ayiClone",

View File

@@ -519,7 +519,7 @@ async function clickHandler(menuItem) {
case "new":
m.vm.$router.push({
name: "tax-code-edit",
params: { recordid: 0, new: true }
params: { recordid: 0 }
});
break;
case "duplicate":
@@ -633,7 +633,7 @@ function generateMenu(vm) {
});
}
if (vm.rights.change) {
if (vm.rights.change && vm.$route.params.recordid != 0) {
menuOptions.menuItems.push({
title: "Duplicate",
icon: "$ayiClone",

View File

@@ -560,7 +560,7 @@ async function clickHandler(menuItem) {
case "new":
m.vm.$router.push({
name: "travel-rate-edit",
params: { recordid: 0, new: true }
params: { recordid: 0 }
});
break;
case "duplicate":
@@ -674,7 +674,7 @@ function generateMenu(vm) {
});
}
if (vm.rights.change) {
if (vm.rights.change && vm.$route.params.recordid != 0) {
menuOptions.menuItems.push({
title: "Duplicate",
icon: "$ayiClone",

View File

@@ -513,7 +513,7 @@ async function clickHandler(menuItem) {
case "new":
m.vm.$router.push({
name: "adm-translation",
params: { recordid: 0, new: true }
params: { recordid: 0 }
});
break;
case "duplicate":

View File

@@ -926,7 +926,7 @@ async function clickHandler(menuItem) {
case "new":
m.vm.$router.push({
name: "adm-user",
params: { recordid: 0, new: true }
params: { recordid: 0 }
});
break;
case "duplicate":

View File

@@ -1000,7 +1000,7 @@ async function clickHandler(menuItem) {
case "new":
m.vm.$router.push({
name: "ay-report-edit",
params: { recordid: 0, new: true }
params: { recordid: 0 }
});
break;
case "duplicate":
@@ -1075,7 +1075,7 @@ function generateMenu(vm) {
});
}
if (vm.rights.change) {
if (vm.rights.change && vm.$route.params.recordid != 0) {
menuOptions.menuItems.push({
title: "Duplicate",
icon: "$ayiClone",

View File

@@ -385,7 +385,7 @@ async function clickHandler(menuItem) {
case "new":
m.vm.$router.push({
name: "customer-note-edit",
params: { recordid: 0, new: true }
params: { recordid: 0 }
});
break;

View File

@@ -1357,7 +1357,7 @@ async function clickHandler(menuItem) {
case "new":
m.vm.$router.push({
name: "customer-edit",
params: { recordid: 0, new: true }
params: { recordid: 0 }
});
break;
case "duplicate":
@@ -1488,7 +1488,7 @@ function generateMenu(vm) {
});
}
if (vm.rights.change) {
if (vm.rights.change && vm.$route.params.recordid != 0) {
menuOptions.menuItems.push({
title: "Duplicate",
icon: "$ayiClone",

View File

@@ -1261,7 +1261,7 @@ async function clickHandler(menuItem) {
case "new":
m.vm.$router.push({
name: "head-office-edit",
params: { recordid: 0, new: true }
params: { recordid: 0 }
});
break;
case "duplicate":

View File

@@ -931,7 +931,7 @@ async function clickHandler(menuItem) {
case "new":
m.vm.$router.push({
name: "adm-user",
params: { recordid: 0, new: true }
params: { recordid: 0 }
});
break;
case "duplicate":

View File

@@ -553,7 +553,7 @@ async function clickHandler(menuItem) {
case "new":
m.vm.$router.push({
name: "memo-edit",
params: { recordid: 0, new: true }
params: { recordid: 0 }
});
case "report":

View File

@@ -627,7 +627,7 @@ async function clickHandler(menuItem) {
case "new":
m.vm.$router.push({
name: "home-notify-subscription",
params: { recordid: 0, new: true }
params: { recordid: 0 }
});
break;
case "duplicate":

View File

@@ -506,7 +506,7 @@ async function clickHandler(menuItem) {
case "new":
m.vm.$router.push({
name: "reminder-edit",
params: { recordid: 0, new: true }
params: { recordid: 0 }
});
break;
case "duplicate":

View File

@@ -673,7 +673,7 @@ async function clickHandler(menuItem) {
case "new":
m.vm.$router.push({
name: "part-assembly-edit",
params: { recordid: 0, new: true }
params: { recordid: 0 }
});
break;
case "duplicate":

View File

@@ -455,7 +455,7 @@ async function clickHandler(menuItem) {
case "new":
m.vm.$router.push({
name: "inv-part-warehouse",
params: { recordid: 0, new: true }
params: { recordid: 0 }
});
break;
case "duplicate":

View File

@@ -670,7 +670,7 @@ async function clickHandler(menuItem) {
case "new":
m.vm.$router.push({
name: "inv-part",
params: { recordid: 0, new: true }
params: { recordid: 0 }
});
break;
case "duplicate":

View File

@@ -1621,7 +1621,7 @@ async function clickHandler(menuItem) {
case "new":
m.vm.$router.push({
name: "project-edit",
params: { recordid: 0, new: true }
params: { recordid: 0 }
});
break;
case "duplicate":

View File

@@ -1831,7 +1831,7 @@ async function clickHandler(menuItem) {
case "new":
m.vm.$router.push({
name: "contract-edit",
params: { recordid: 0, new: true }
params: { recordid: 0 }
});
break;
case "duplicate":

View File

@@ -798,7 +798,7 @@ async function clickHandler(menuItem) {
case "new":
m.vm.$router.push({
name: "loan-unit-edit",
params: { recordid: 0, new: true }
params: { recordid: 0 }
});
break;
case "duplicate":

View File

@@ -196,31 +196,34 @@ export default {
vm.formState.readOnly = !vm.rights.change;
window.$gz.eventBus.$on("menu-click", clickHandler);
let setDirty = false;
let setValid = true;
//id 0 means create a new record don't load one
if (vm.$route.params.recordid != 0) {
//is there already an obj from a prior operation?
if (this.$route.params.obj) {
//yes, no need to fetch it
this.obj = this.$route.params.obj;
window.$gz.form.setFormState({
vm: vm,
loading: false
});
} else {
await vm.getDataFromApi(vm.$route.params.recordid); //let getdata handle loading
}
} else {
window.$gz.form.setFormState({
vm: vm,
loading: false
});
//Might be a duplicate and contain another record
if (this.$route.params.obj) {
this.obj = this.$route.params.obj;
this.obj.concurrency = undefined;
this.obj.id = 0;
setDirty = true;
}
}
window.$gz.form.setFormState({
vm: vm,
dirty: false,
valid: true
loading: false,
dirty: setDirty,
valid: setValid
});
generateMenu(vm);
} catch (error) {
window.$gz.errorHandler.handleFormError(error, vm);
@@ -477,41 +480,16 @@ export default {
}
},
async duplicate() {
let vm = this;
if (!vm.canDuplicate || vm.$route.params.recordid == 0) {
return;
}
window.$gz.form.setFormState({
vm: vm,
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: "project-edit",
params: {
recordid: res.data.id,
obj: res.data // Pass data object to new form
}
});
//Navigate to new record
this.$router.push({
name: "project-edit",
params: {
recordid: 0,
obj: this.obj
}
} catch (ex) {
window.$gz.errorHandler.handleFormError(ex, vm);
} finally {
window.$gz.form.setFormState({
vm: vm,
loading: false
});
}
});
}
//end methods
}
};
@@ -535,7 +513,7 @@ async function clickHandler(menuItem) {
case "new":
m.vm.$router.push({
name: "project-edit",
params: { recordid: 0, new: true }
params: { recordid: 0 }
});
break;
case "duplicate":
@@ -649,7 +627,8 @@ function generateMenu(vm) {
});
}
if (vm.rights.change) {
if (vm.rights.change && vm.$route.params.recordid != 0) {
//dupe do this
menuOptions.menuItems.push({
title: "Duplicate",
icon: "$ayiClone",

View File

@@ -646,7 +646,7 @@ async function clickHandler(menuItem) {
case "new":
m.vm.$router.push({
name: "unit-model-edit",
params: { recordid: 0, new: true }
params: { recordid: 0 }
});
break;
case "duplicate":

View File

@@ -1210,7 +1210,7 @@ async function clickHandler(menuItem) {
case "new":
m.vm.$router.push({
name: "unit-edit",
params: { recordid: 0, new: true }
params: { recordid: 0 }
});
break;
case "duplicate":

View File

@@ -1704,7 +1704,7 @@ async function clickHandler(menuItem) {
case "new":
m.vm.$router.push({
name: "workorder-edit",
params: { recordid: 0, new: true }
params: { recordid: 0 }
});
break;
case "duplicate":

View File

@@ -1041,7 +1041,7 @@ async function clickHandler(menuItem) {
case "new":
m.vm.$router.push({
name: "vendor-edit",
params: { recordid: 0, new: true }
params: { recordid: 0 }
});
break;
case "duplicate":

View File

@@ -601,7 +601,7 @@ async function clickHandler(menuItem) {
case "new":
m.vm.$router.push({
name: "widget-edit",
params: { recordid: 0, new: true }
params: { recordid: 0 }
});
break;
case "duplicate":