This commit is contained in:
@@ -428,12 +428,19 @@ consider: duplicate workorder if to be replacement for templates needs ability t
|
||||
remove big chunks of things all at once
|
||||
|
||||
bugbug: tags are not *displaying* when a record is opened until click in a field
|
||||
Does not happen on devops which was posted June 17th so it happened after june 17th
|
||||
happens with chrome or firefox locally but not on devops so it's a local code issue
|
||||
Same browser as devops so not a browser issue
|
||||
happening in all objects with tags
|
||||
not happening in wiki
|
||||
reveals only when a change to the form is made of some kind that triggers I guess formfieldchanged
|
||||
event. Fuck.
|
||||
Look at changes to tag control, maybe it's in there?
|
||||
or in form() manager code
|
||||
tag picker hasn't been modified since april 30 and only to change a font
|
||||
bug isn't due to change in tag picker itself
|
||||
I'm leaning toward a regression when updated tag picker source <v-autocomplete with vuetify
|
||||
look into that aspect
|
||||
smoking gun: Vue and vuetify were updated the day after posting to devops working version
|
||||
check for another use of v-autocomplete and see if same issue to confirm then check for update since or bug reports on vuetify
|
||||
|
||||
|
||||
todo: User duplicate not working, error about optionsobj
|
||||
|
||||
@@ -191,52 +191,95 @@ export default {
|
||||
vm.formState.readOnly = !vm.rights.change;
|
||||
window.$gz.eventBus.$on("menu-click", clickHandler);
|
||||
|
||||
// //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 (vm.$route.params.obj) {
|
||||
// //yes, no need to fetch it
|
||||
// vm.name = vm.$route.params.name;
|
||||
// vm.obj = vm.$route.params.obj;
|
||||
// window.$gz.form.setFormState({
|
||||
// vm: vm,
|
||||
// loading: false
|
||||
// });
|
||||
// } else {
|
||||
// await vm.getDataFromApi(vm.$route.params.recordid); //let getdata handle loading
|
||||
// }
|
||||
// } else {
|
||||
// //New record so there has to be a object type and objectId in route
|
||||
// // path: "/home-reviews/:recordid/:aType?/:objectId?",
|
||||
// vm.obj.objectId = window.$gz.util.stringToIntOrNull(
|
||||
// vm.$route.params.objectId
|
||||
// );
|
||||
// vm.obj.aType = window.$gz.util.stringToIntOrNull(
|
||||
// vm.$route.params.aType
|
||||
// );
|
||||
|
||||
// if (!vm.obj.objectId || !vm.obj.aType) {
|
||||
// throw "AType and ObjectId are required to create a review";
|
||||
// }
|
||||
// vm.name = vm.$route.params.name;
|
||||
|
||||
// window.$gz.form.setFormState({
|
||||
// vm: vm,
|
||||
// loading: false
|
||||
// });
|
||||
// }
|
||||
|
||||
// if (!vm.name) {
|
||||
// vm.name = await window.$gz.api.fetchBizObjectName(
|
||||
// vm.obj.aType,
|
||||
// vm.obj.objectId
|
||||
// );
|
||||
// }
|
||||
|
||||
// window.$gz.form.setFormState({
|
||||
// vm: vm,
|
||||
// dirty: false,
|
||||
// valid: true
|
||||
// });
|
||||
|
||||
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 (vm.$route.params.obj) {
|
||||
if (this.$route.params.obj) {
|
||||
//yes, no need to fetch it
|
||||
vm.name = vm.$route.params.name;
|
||||
vm.obj = vm.$route.params.obj;
|
||||
window.$gz.form.setFormState({
|
||||
vm: vm,
|
||||
loading: false
|
||||
});
|
||||
this.obj = this.$route.params.obj;
|
||||
} else {
|
||||
await vm.getDataFromApi(vm.$route.params.recordid); //let getdata handle loading
|
||||
}
|
||||
} else {
|
||||
//New record so there has to be a object type and objectId in route
|
||||
// path: "/home-reviews/:recordid/:aType?/:objectId?",
|
||||
vm.obj.objectId = window.$gz.util.stringToIntOrNull(
|
||||
vm.$route.params.objectId
|
||||
);
|
||||
vm.obj.aType = window.$gz.util.stringToIntOrNull(
|
||||
vm.$route.params.aType
|
||||
);
|
||||
//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;
|
||||
} else {
|
||||
//New record so there has to be a object type and objectId in route
|
||||
// path: "/home-reviews/:recordid/:aType?/:objectId?",
|
||||
vm.obj.objectId = window.$gz.util.stringToIntOrNull(
|
||||
vm.$route.params.objectId
|
||||
);
|
||||
vm.obj.aType = window.$gz.util.stringToIntOrNull(
|
||||
vm.$route.params.aType
|
||||
);
|
||||
|
||||
if (!vm.obj.objectId || !vm.obj.aType) {
|
||||
throw "AType and ObjectId are required to create a review";
|
||||
if (!vm.obj.objectId || !vm.obj.aType) {
|
||||
throw "AType and ObjectId are required to create a review";
|
||||
}
|
||||
vm.name = vm.$route.params.name;
|
||||
}
|
||||
vm.name = vm.$route.params.name;
|
||||
|
||||
window.$gz.form.setFormState({
|
||||
vm: vm,
|
||||
loading: false
|
||||
});
|
||||
}
|
||||
|
||||
if (!vm.name) {
|
||||
vm.name = await window.$gz.api.fetchBizObjectName(
|
||||
vm.obj.aType,
|
||||
vm.obj.objectId
|
||||
);
|
||||
}
|
||||
|
||||
window.$gz.form.setFormState({
|
||||
vm: vm,
|
||||
dirty: false,
|
||||
valid: true
|
||||
loading: false,
|
||||
dirty: setDirty,
|
||||
valid: setValid
|
||||
});
|
||||
|
||||
generateMenu(vm);
|
||||
@@ -542,41 +585,51 @@ 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: "review-edit",
|
||||
params: {
|
||||
recordid: res.data.id,
|
||||
obj: res.data // Pass data object to new form
|
||||
}
|
||||
});
|
||||
//Navigate to new record
|
||||
this.$router.push({
|
||||
name: "review-edit",
|
||||
params: {
|
||||
recordid: 0,
|
||||
obj: this.obj
|
||||
}
|
||||
} catch (ex) {
|
||||
window.$gz.errorHandler.handleFormError(ex, vm);
|
||||
} finally {
|
||||
window.$gz.form.setFormState({
|
||||
vm: vm,
|
||||
loading: false
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
// 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: "review-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
|
||||
// });
|
||||
// }
|
||||
// }
|
||||
|
||||
//end methods
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user