case 4764 - open a case by its number from the case list
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -1,5 +1,44 @@
|
||||
<template>
|
||||
<div>
|
||||
<!-- case 4764: open a case by its number, as AyaNova's work order list (Sockeye only, so plain English) -->
|
||||
<v-row dense justify="center">
|
||||
<v-dialog
|
||||
v-model="openDialog"
|
||||
persistent
|
||||
max-width="600px"
|
||||
@keydown.esc="openDialog = false"
|
||||
@keydown.enter="openCase()"
|
||||
>
|
||||
<v-card>
|
||||
<v-card-title>
|
||||
<span class="text-h5">Open case</span>
|
||||
</v-card-title>
|
||||
<v-card-text>
|
||||
<v-text-field
|
||||
v-model="openCaseNumber"
|
||||
label="Case number"
|
||||
autofocus
|
||||
required
|
||||
type="number"
|
||||
data-cy="openCaseNumber"
|
||||
></v-text-field>
|
||||
</v-card-text>
|
||||
<v-card-actions>
|
||||
<v-spacer></v-spacer>
|
||||
<v-btn color="blue darken-1" text @click="openDialog = false">{{
|
||||
$sock.t("Cancel")
|
||||
}}</v-btn>
|
||||
<v-btn
|
||||
color="blue darken-1"
|
||||
text
|
||||
:disabled="!openCaseNumber"
|
||||
@click="openCase()"
|
||||
>{{ $sock.t("OK") }}</v-btn
|
||||
>
|
||||
</v-card-actions>
|
||||
</v-card>
|
||||
</v-dialog>
|
||||
</v-row>
|
||||
<gz-report-selector ref="reportSelector"></gz-report-selector>
|
||||
<gz-extensions
|
||||
ref="extensions"
|
||||
@@ -36,7 +75,9 @@ export default {
|
||||
preFilterMode: null,
|
||||
objectId: null,
|
||||
aForType: null,
|
||||
name: null
|
||||
name: null,
|
||||
openDialog: false,
|
||||
openCaseNumber: null
|
||||
};
|
||||
},
|
||||
created() {
|
||||
@@ -72,6 +113,27 @@ export default {
|
||||
handleSelected(selected) {
|
||||
this.selectedItems = selected;
|
||||
},
|
||||
async openCase() {
|
||||
//case 4764
|
||||
if (!this.openCaseNumber) {
|
||||
return;
|
||||
}
|
||||
const res = await window.$gz.api.get(
|
||||
"gzcase/id-from-number/" + this.openCaseNumber
|
||||
);
|
||||
if (res.error) {
|
||||
window.$gz.eventBus.$emit(
|
||||
"notify-warning",
|
||||
`Case ${this.openCaseNumber} was not found`
|
||||
);
|
||||
return;
|
||||
}
|
||||
this.openDialog = false;
|
||||
this.$router.push({
|
||||
name: "gzcase-edit",
|
||||
params: { recordid: res.data }
|
||||
});
|
||||
},
|
||||
clearPreFilter() {
|
||||
this.clientCriteria = null;
|
||||
this.preFilterMode = null;
|
||||
@@ -96,6 +158,10 @@ async function clickHandler(menuItem) {
|
||||
params: { recordid: 0 }
|
||||
});
|
||||
break;
|
||||
case "open":
|
||||
m.vm.openCaseNumber = null;
|
||||
m.vm.openDialog = true;
|
||||
break;
|
||||
case "extensions":
|
||||
{
|
||||
const res = await m.vm.$refs.extensions.open(
|
||||
@@ -175,6 +241,14 @@ function generateMenu(vm) {
|
||||
key: FORM_KEY + ":extensions",
|
||||
vm: vm
|
||||
});
|
||||
//case 4764
|
||||
menuOptions.menuItems.push({
|
||||
title: "Open case",
|
||||
notrans: true,
|
||||
icon: "$sockiCoffee",
|
||||
key: FORM_KEY + ":open",
|
||||
vm: vm
|
||||
});
|
||||
window.$gz.eventBus.$emit("menu-change", menuOptions);
|
||||
}
|
||||
</script>
|
||||
|
||||
Reference in New Issue
Block a user