This commit is contained in:
2021-05-04 18:02:04 +00:00
parent 95ede57718
commit 2700a8c2b5
5 changed files with 62 additions and 91 deletions

View File

@@ -309,9 +309,16 @@ CURRENTLY DOING: woitempriority, woitemstatus edit forms first so have somethin
could use emoji or similar if necessary or maybe it's like the grid lists and just colors a border on one side (!!!!!) could use emoji or similar if necessary or maybe it's like the grid lists and just colors a border on one side (!!!!!)
wo should prefetch and store picklist style like the wostatus already does on open wo should prefetch and store picklist style like the wostatus already does on open
TODO: help docs for woitemstatus and woitempriority
Joyce is going to:
1797-B 10th street
East courtenay
past superstore area
taking van

View File

@@ -299,6 +299,20 @@ export default {
}); });
break; break;
case ayatype.WorkOrderItemStatus:
vm.$router.push({
name: "svc-work-order-item-status-edit",
params: { recordid: tid.id }
});
break;
case ayatype.WorkOrderItemPriority:
vm.$router.push({
name: "svc-work-order-item-priority-edit",
params: { recordid: tid.id }
});
break;
default: default:
window.$gz.eventBus.$emit( window.$gz.eventBus.$emit(
"notify-warning", "notify-warning",

View File

@@ -9,7 +9,7 @@
<v-text-field <v-text-field
v-model="obj.name" v-model="obj.name"
:readonly="formState.readOnly" :readonly="formState.readOnly"
:label="$ay.t('WorkOrderPriorityName')" :label="$ay.t('WorkOrderItemPriorityName')"
:rules="[form().required(this, 'name')]" :rules="[form().required(this, 'name')]"
:error-messages="form().serverErrors(this, 'name')" :error-messages="form().serverErrors(this, 'name')"
ref="name" ref="name"
@@ -20,7 +20,7 @@
<v-col cols="12" sm="6" lg="4" xl="3"> <v-col cols="12" sm="6" lg="4" xl="3">
<span class="text-caption"> <span class="text-caption">
{{ $ay.t("WorkOrderPriorityColor") }} {{ $ay.t("WorkOrderItemPriorityColor") }}
</span> </span>
<v-color-picker <v-color-picker
v-model="obj.color" v-model="obj.color"
@@ -62,9 +62,9 @@
// //
//////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////////////
// //
const FORM_KEY = "svc-work-order-priority-edit"; const FORM_KEY = "svc-work-order-item-priority-edit";
const API_BASE_URL = "work-order-priority/"; const API_BASE_URL = "work-order-item-priority/";
const FORM_CUSTOM_TEMPLATE_KEY = "WorkOrderPriority"; //<-- Should always be CoreBizObject AyaType name here where possible const FORM_CUSTOM_TEMPLATE_KEY = "WorkOrderItemPriority"; //<-- Should always be CoreBizObject AyaType name here where possible
export default { export default {
async created() { async created() {
@@ -73,7 +73,9 @@ export default {
try { try {
await initForm(vm); await initForm(vm);
vm.rights = window.$gz.role.getRights(window.$gz.type.WorkOrderPriority); vm.rights = window.$gz.role.getRights(
window.$gz.type.WorkOrderItemPriority
);
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);
@@ -125,7 +127,7 @@ export default {
}, },
data() { data() {
return { return {
formCustomTemplateKey: FORM_CUSTOM_TEMPLATE_KEY, //formCustomTemplateKey: FORM_CUSTOM_TEMPLATE_KEY,
obj: { obj: {
id: 0, id: 0,
concurrency: 0, concurrency: 0,
@@ -282,7 +284,7 @@ export default {
//NOTE: will not cause a page re-render, almost nothing does unless forced with a KEY property or using router.GO() //NOTE: will not cause a page re-render, almost nothing does unless forced with a KEY property or using router.GO()
this.$router.push({ this.$router.push({
name: "svc-work-order-priority-edit", name: "svc-work-order-item-priority-edit",
params: { params: {
recordid: res.data.id, recordid: res.data.id,
obj: res.data // Pass data object to new form obj: res.data // Pass data object to new form
@@ -390,13 +392,13 @@ function generateMenu(vm) {
let menuOptions = { let menuOptions = {
isMain: false, isMain: false,
readOnly: vm.formState.readOnly, readOnly: vm.formState.readOnly,
icon: "$ayiFlag", icon: "$ayiCircle",
title: "WorkOrderPriority", title: "WorkOrderItemPriority",
helpUrl: "svc-work-order-priority", helpUrl: "svc-work-order-item-priority",
formData: { formData: {
ayaType: window.$gz.type.WorkOrderPriority, ayaType: window.$gz.type.WorkOrderItemPriority,
recordId: vm.$route.params.recordid, recordId: vm.$route.params.recordid,
formCustomTemplateKey: FORM_CUSTOM_TEMPLATE_KEY, //formCustomTemplateKey: FORM_CUSTOM_TEMPLATE_KEY,
recordName: vm.obj.name recordName: vm.obj.name
}, },
menuItems: [] menuItems: []
@@ -438,7 +440,7 @@ let JUST_DELETED = false;
// //
async function initForm(vm) { async function initForm(vm) {
await fetchTranslatedText(); await fetchTranslatedText();
await window.$gz.formCustomTemplate.get(FORM_CUSTOM_TEMPLATE_KEY, vm); //await window.$gz.formCustomTemplate.get(FORM_CUSTOM_TEMPLATE_KEY, vm);
} }
////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////

View File

@@ -9,7 +9,7 @@
<v-text-field <v-text-field
v-model="obj.name" v-model="obj.name"
:readonly="formState.readOnly" :readonly="formState.readOnly"
:label="$ay.t('WorkOrderStatusName')" :label="$ay.t('WorkOrderItemStatusName')"
:rules="[form().required(this, 'name')]" :rules="[form().required(this, 'name')]"
:error-messages="form().serverErrors(this, 'name')" :error-messages="form().serverErrors(this, 'name')"
ref="name" ref="name"
@@ -18,58 +18,9 @@
></v-text-field> ></v-text-field>
</v-col> </v-col>
<v-col cols="12" sm="6" lg="4" xl="3">
<v-checkbox
v-model="obj.completed"
:readonly="formState.readOnly"
:label="$ay.t('WorkOrderStatusCompleted')"
ref="completed"
data-cy="completed"
:error-messages="form().serverErrors(this, 'completed')"
@change="fieldValueChanged('completed')"
></v-checkbox>
</v-col>
<v-col cols="12" sm="6" lg="4" xl="3">
<v-checkbox
v-model="obj.locked"
:readonly="formState.readOnly"
:label="$ay.t('WorkOrderStatusLocked')"
ref="locked"
data-cy="locked"
:error-messages="form().serverErrors(this, 'locked')"
@change="fieldValueChanged('locked')"
></v-checkbox>
</v-col>
<v-col cols="12" sm="6" lg="4" xl="3">
<gz-role-picker
:label="$ay.t('WorkOrderStatusSelectRoles')"
v-model="obj.selectRoles"
:readonly="formState.readOnly"
ref="selectRoles"
data-cy="selectRoles"
:error-messages="form().serverErrors(this, 'selectRoles')"
@input="fieldValueChanged('selectRoles')"
limit-selection-to="inside"
></gz-role-picker>
</v-col>
<v-col cols="12" sm="6" lg="4" xl="3">
<gz-role-picker
:label="$ay.t('WorkOrderStatusRemoveRoles')"
v-model="obj.removeRoles"
:readonly="formState.readOnly"
ref="removeRoles"
data-cy="removeRoles"
:error-messages="form().serverErrors(this, 'removeRoles')"
@input="fieldValueChanged('removeRoles')"
limit-selection-to="inside"
></gz-role-picker>
</v-col>
<v-col cols="12" sm="6" lg="4" xl="3"> <v-col cols="12" sm="6" lg="4" xl="3">
<span class="text-caption"> <span class="text-caption">
{{ $ay.t("WorkOrderStatusColor") }} {{ $ay.t("WorkOrderItemStatusColor") }}
</span> </span>
<v-color-picker <v-color-picker
v-model="obj.color" v-model="obj.color"
@@ -94,11 +45,14 @@
</v-col> </v-col>
<!-------------------------------------> <!------------------------------------->
<v-col v-if="form().showMe(this, 'WorkOrderStatusNotes')" cols="12"> <v-col
v-if="form().showMe(this, 'WorkOrderItemStatusNotes')"
cols="12"
>
<v-textarea <v-textarea
v-model="obj.notes" v-model="obj.notes"
:readonly="formState.readOnly" :readonly="formState.readOnly"
:label="$ay.t('WorkOrderStatusNotes')" :label="$ay.t('WorkOrderItemStatusNotes')"
:error-messages="form().serverErrors(this, 'notes')" :error-messages="form().serverErrors(this, 'notes')"
ref="notes" ref="notes"
data-cy="notes" data-cy="notes"
@@ -125,9 +79,9 @@
// //
//////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////////////
// //
const FORM_KEY = "svc-work-order-status-edit"; const FORM_KEY = "svc-work-order-item-status-edit";
const API_BASE_URL = "work-order-status/"; const API_BASE_URL = "work-order-item-status/";
const FORM_CUSTOM_TEMPLATE_KEY = "WorkOrderStatus"; //<-- Should always be CoreBizObject AyaType name here where possible const FORM_CUSTOM_TEMPLATE_KEY = "WorkOrderItemStatus"; //<-- Should always be CoreBizObject AyaType name here where possible
export default { export default {
async created() { async created() {
@@ -136,7 +90,9 @@ export default {
try { try {
await initForm(vm); await initForm(vm);
vm.rights = window.$gz.role.getRights(window.$gz.type.WorkOrderStatus); vm.rights = window.$gz.role.getRights(
window.$gz.type.WorkOrderItemStatus
);
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);
@@ -195,11 +151,7 @@ export default {
name: null, name: null,
active: true, active: true,
notes: null, notes: null,
color: "#ffffff", //if no previously set value then control will respond with a big object with all color system values in place, this prevents that color: "#ffffff" //if no previously set value then control will respond with a big object with all color system values in place, this prevents that
selectRoles: 1290,
removeRoles: 1290,
completed: false,
locked: false
}, },
formState: { formState: {
ready: false, ready: false,
@@ -212,7 +164,7 @@ export default {
serverError: {} serverError: {}
}, },
rights: window.$gz.role.defaultRightsObject(), rights: window.$gz.role.defaultRightsObject(),
ayaType: window.$gz.type.WorkOrderStatus ayaType: window.$gz.type.WorkOrderItemStatus
}; };
}, },
//WATCHERS //WATCHERS
@@ -453,11 +405,11 @@ function generateMenu(vm) {
let menuOptions = { let menuOptions = {
isMain: false, isMain: false,
readOnly: vm.formState.readOnly, readOnly: vm.formState.readOnly,
icon: "$ayiFlag", icon: "$ayiCircle",
title: "WorkOrderStatus", title: "WorkOrderItemStatus",
helpUrl: "svc-work-order-status", helpUrl: "svc-work-order-item-status",
formData: { formData: {
ayaType: window.$gz.type.WorkOrderStatus, ayaType: window.$gz.type.WorkOrderItemStatus,
recordId: vm.$route.params.recordid, recordId: vm.$route.params.recordid,
formCustomTemplateKey: FORM_CUSTOM_TEMPLATE_KEY, formCustomTemplateKey: FORM_CUSTOM_TEMPLATE_KEY,
recordName: vm.obj.name recordName: vm.obj.name
@@ -510,14 +462,10 @@ async function initForm(vm) {
// //
async function fetchTranslatedText() { async function fetchTranslatedText() {
await window.$gz.translation.cacheTranslations([ await window.$gz.translation.cacheTranslations([
"WorkOrderStatus", "WorkOrderItemStatus",
"WorkOrderStatusName", "WorkOrderItemStatusName",
"WorkOrderStatusCompleted", "WorkOrderItemStatusColor",
"WorkOrderStatusLocked", "WorkOrderItemStatusNotes"
"WorkOrderStatusSelectRoles",
"WorkOrderStatusRemoveRoles",
"WorkOrderStatusColor",
"WorkOrderStatusNotes"
]); ]);
} }
</script> </script>

View File

@@ -1134,7 +1134,7 @@ async function fetchTranslatedText(vm) {
"SelectAlternateAddress", "SelectAlternateAddress",
"WorkOrderItemStatusList", "WorkOrderItemStatusList",
"WorkOrderStatusList", "WorkOrderStatusList",
"PriorityList" "WorkOrderItemPriorityList"
]); ]);
} }