multiple numbers

This commit is contained in:
Gabriel Pastori 2023-11-19 00:52:18 -03:00
parent 8e8bd216d5
commit 9b34d98657

View File

@ -5,7 +5,9 @@
<v-card-text> <v-card-text>
<v-form v-model="valid"> <v-form v-model="valid">
<v-autocomplete <v-autocomplete
v-model="message.number" v-model="numbers"
multiple
chips
label="Para" label="Para"
:loading="loadingContacts" :loading="loadingContacts"
:items="contacts" :items="contacts"
@ -19,24 +21,24 @@
></v-list-item> ></v-list-item>
<v-list-item v-else title="Sem contatos"></v-list-item> <v-list-item v-else title="Sem contatos"></v-list-item>
</template> </template>
<template v-slot:selection="{ item }"> <template v-slot:chip="{ item }">
<div class="d-flex gap-1 align-center"> <v-chip class="d-flex gap-1 align-center">
<v-avatar size="30"> <v-avatar size="20">
<v-img <v-img
height="30" height="20"
width="30" width="20"
v-if="item?.raw?.photo" v-if="item?.raw?.photo"
:src="item?.raw?.photo" :src="item?.raw?.photo"
/> />
<v-icon size="30" v-else> <v-icon size="20" v-else>
mdi-{{ item?.raw?.isGroup ? "account-group" : "account" }} mdi-{{ item?.raw?.isGroup ? "account-group" : "account" }}
</v-icon> </v-icon>
</v-avatar> </v-avatar>
<span> <span class="ml-2">
{{ item.raw.title }} {{ item.raw.title }}
</span> </span>
</div> </v-chip>
</template> </template>
<template v-slot:item="{ props, item }"> <template v-slot:item="{ props, item }">
<v-list-item v-bind="props" :title="null"> <v-list-item v-bind="props" :title="null">
@ -109,7 +111,8 @@
</v-form> </v-form>
<v-alert type="success" v-if="success"> <v-alert type="success" v-if="success">
{{ success.message }} <b>{{ success.messageId }}</b> <p>{{ success.message }}</p>
<b>{{ success.messageId }}</b>
</v-alert> </v-alert>
<v-alert type="error" v-if="error"> <v-alert type="error" v-if="error">
{{ Array.isArray(error) ? error.join(", ") : error }} {{ Array.isArray(error) ? error.join(", ") : error }}
@ -161,6 +164,7 @@ export default {
loadingContacts: false, loadingContacts: false,
error: false, error: false,
contacts: [], contacts: [],
numbers: [],
search: "", search: "",
success: false, success: false,
AppStore: useAppStore(), AppStore: useAppStore(),
@ -173,16 +177,27 @@ export default {
this.success = false; this.success = false;
this.error = false; this.error = false;
const response = await instanceController.chat.sendMessage( var messagesId = [];
this.instance.instance.instanceName, for (const number of this.numbers) {
this.message const r = await instanceController.chat.sendMessage(
); this.instance.instance.instanceName,
{
...this.message,
number,
}
);
if (r.key?.id) messagesId.push(r.key?.id);
}
this.success = { this.success = {
messageId: response.key.id, messageId: messagesId.join(", "),
message: "Mensagem enviada com sucesso", message: `Mensage${
this.numbers.length != 1 ? "ns" : "m"
} enviada com sucesso`,
}; };
this.message = defaultMessage(); this.message = defaultMessage();
this.numbers = [];
setTimeout(() => { setTimeout(() => {
this.success = false; this.success = false;
}, 10000); }, 10000);