This commit is contained in:
2020-12-30 17:20:03 +00:00
parent 07ff575ad0
commit c5a0f6baa6
4 changed files with 27 additions and 165 deletions

View File

@@ -213,6 +213,12 @@ export default {
params: { recordid: tid.id }
});
break;
case ayatype.ServiceBank:
vm.$router.push({
name: "service-bank-edit",
params: { recordid: tid.id }
});
break;
default:
window.$gz.eventBus.$emit(

View File

@@ -9,154 +9,23 @@
><span class="text-h5" @click="navToTarget()"> {{ name }}</span>
</div>
<v-row>
<v-col v-if="currentUserIsASupervisor" cols="12" sm="6" lg="4" xl="3">
<gz-pick-list
:ayaType="ayaTypes().User"
:variant="'inside'"
:showEditIcon="true"
:allowNoSelection="false"
:canClear="false"
v-model="obj.userId"
:readonly="formState.readOnly"
:label="$ay.t('ServiceBankUserId')"
:rules="[form().required(this, 'userId')]"
ref="userId"
data-cy="userId"
:error-messages="form().serverErrors(this, 'userId')"
@input="fieldValueChanged('userId')"
></gz-pick-list>
</v-col>
<v-col v-if="currentUserIsASupervisor" cols="12" sm="6" lg="4" xl="3">
<gz-pick-list
:ayaType="ayaTypes().User"
:variant="'inside'"
:showEditIcon="true"
v-model="obj.assignedByUserId"
readonly
:label="$ay.t('ServiceBankAssignedByUserId')"
:rules="[form().required(this, 'assignedByUserId')]"
ref="assignedByUserId"
data-cy="assignedByUserId"
:error-messages="form().serverErrors(this, 'assignedByUserId')"
@input="fieldValueChanged('assignedByUserId')"
></gz-pick-list>
</v-col>
<v-col cols="12" sm="6" lg="4" xl="3">
<v-text-field
<v-col cols="12">
<v-textarea
v-model="obj.name"
:readonly="
formState.readOnly ||
(!selfAssigned && !currentUserIsASupervisor)
"
:label="$ay.t('ServiceBankName')"
:readonly="formState.readOnly"
:label="$ay.t('ServiceBankNotes')"
:rules="[form().required(this, 'name')]"
:error-messages="form().serverErrors(this, 'name')"
ref="name"
data-cy="name"
@input="fieldValueChanged('name')"
></v-text-field>
</v-col>
<v-col cols="12" sm="6" lg="4" xl="3">
<gz-date-time-picker
:label="$ay.t('ServiceBankDueDate')"
:rules="[form().required(this, 'dueDate')]"
v-model="obj.dueDate"
:readonly="
formState.readOnly ||
(!selfAssigned && !currentUserIsASupervisor)
"
ref="dueDate"
testId="dueDate"
:error-messages="form().serverErrors(this, 'dueDate')"
@input="fieldValueChanged('dueDate')"
></gz-date-time-picker>
</v-col>
<v-col cols="12">
<v-textarea
v-model="obj.notes"
:readonly="
formState.readOnly ||
(!selfAssigned && !currentUserIsASupervisor)
"
:label="$ay.t('ServiceBankNotes')"
:error-messages="form().serverErrors(this, 'notes')"
ref="notes"
data-cy="notes"
@input="fieldValueChanged('notes')"
auto-grow
></v-textarea>
</v-col>
<v-col cols="12" sm="6" lg="4" xl="3">
<gz-date-time-picker
:label="$ay.t('ServiceBankCompletedDate')"
:error-messages="form().serverErrors(this, 'completedDate')"
v-model="obj.completedDate"
:readonly="formState.readOnly"
ref="completedDate"
testId="completedDate"
@input="fieldValueChanged('completedDate')"
></gz-date-time-picker>
</v-col>
<v-col cols="12">
<v-textarea
v-model="obj.completionNotes"
:readonly="formState.readOnly"
:label="$ay.t('ServiceBankCompletionNotes')"
:error-messages="form().serverErrors(this, 'completionNotes')"
ref="completionNotes"
data-cy="completionNotes"
@input="fieldValueChanged('completionNotes')"
auto-grow
></v-textarea>
</v-col>
<!-- --------------------------------- -->
<v-col v-if="form().showMe(this, 'Tags')" cols="12">
<gz-tag-picker
v-model="obj.tags"
:readonly="formState.readOnly"
ref="tags"
data-cy="tags"
:error-messages="form().serverErrors(this, 'tags')"
@input="fieldValueChanged('tags')"
></gz-tag-picker>
</v-col>
<v-col cols="12">
<gz-custom-fields
v-model="obj.customFields"
:formKey="formCustomTemplateKey"
:readonly="formState.readOnly"
:parentVM="this"
ref="customFields"
data-cy="customFields"
:error-messages="form().serverErrors(this, 'customFields')"
@input="fieldValueChanged('customFields')"
></gz-custom-fields>
</v-col>
<v-col v-if="form().showMe(this, 'Wiki')" cols="12">
<gz-wiki
:ayaType="ayaType"
:ayaId="obj.id"
ref="wiki"
v-model="obj.wiki"
:readonly="formState.readOnly"
@input="fieldValueChanged('wiki')"
></gz-wiki
></v-col>
<v-col v-if="form().showMe(this, 'Attachments') && obj.id" cols="12">
<gz-attachments
:readonly="formState.readOnly"
:ayaType="ayaType"
:ayaId="obj.id"
></gz-attachments
></v-col>
</v-row>
</v-form>
</div>
@@ -216,7 +85,7 @@ export default {
);
if (!vm.obj.objectId || !vm.obj.objectType) {
throw "ObjectType and ObjectId are required to set a reminder";
throw "ObjectType and ObjectId are required to create a service bank entry";
}
vm.name = vm.$route.params.name;
@@ -298,14 +167,6 @@ export default {
serverError: {}
},
rights: window.$gz.role.defaultRightsObject(),
ayaType: window.$gz.type.ServiceBank,
currentUserIsASupervisor: window.$gz.role.hasRole([
window.$gz.role.AUTHORIZATION_ROLES.BizAdminFull,
window.$gz.role.AUTHORIZATION_ROLES.DispatchFull,
window.$gz.role.AUTHORIZATION_ROLES.InventoryFull,
window.$gz.role.AUTHORIZATION_ROLES.SalesFull,
window.$gz.role.AUTHORIZATION_ROLES.AccountingFull
]),
name: null
};
},

View File

@@ -312,7 +312,7 @@
:error-messages="form().serverErrors(this, 'usesBanking')"
@change="fieldValueChanged('usesBanking')"
>
<template v-slot:append>
<template v-slot:append v-if="canOpenServiceBank()">
<v-btn
outlined
small
@@ -320,7 +320,7 @@
@click="openServiceBank"
class="ml-12"
>
<v-icon>{{ serviceBankIcon() }}</v-icon></v-btn
<v-icon>$ayiCarBattery</v-icon></v-btn
>
</template>
</v-checkbox>
@@ -927,24 +927,19 @@ export default {
}
},
methods: {
serviceBankIcon: function() {
if (this.obj.usesBanking != true || this.$route.params.recordid == 0) {
return null;
}
return "$ayiCarBattery";
canOpenServiceBank: function() {
return this.obj.usesBanking == true && this.$route.params.recordid != 0;
},
openServiceBank: function() {
if (this.obj.usesBanking != true || this.$route.params.recordid == 0) {
return null;
if (this.canOpenServiceBank()) {
this.$router.push({
name: "service-banks",
params: {
objectType: window.$gz.type.Customer,
objectId: this.$route.params.recordid
}
});
}
this.$router.push({
name: "service-banks",
params: {
objectType: window.$gz.type.Customer,
objectId: this.$route.params.recordid
}
});
},
canSave: function() {
return this.formState.valid && this.formState.dirty;

View File

@@ -216,7 +216,7 @@ export default {
);
if (!vm.obj.objectId || !vm.obj.objectType) {
throw "ObjectType and ObjectId are required to set a reminder";
throw "ObjectType and ObjectId are required to create a review";
}
vm.name = vm.$route.params.name;