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:
2026-11-01 10:37:36 -07:00
parent ac23f1f264
commit 91cb511d6f

View File

@@ -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>