diff --git a/src/components/Messenger.vue b/src/components/Messenger.vue index e2e0bd4..bc70f77 100644 --- a/src/components/Messenger.vue +++ b/src/components/Messenger.vue @@ -10,10 +10,36 @@ const storeTicket = useTicketStore(); const messages = ref([]) +const sendBtn = ref(); + onMounted(async () => { - messages.value = await TicketApi.getMessages(storeTicket.currentTicket.codeTicket, storeTicket.idTicket) + messages.value = await TicketApi.getMessages(storeTicket.currentTicket.code, storeTicket.idTicket) }) +const suspens = ref(false) +const reply = ref({message: null}) + +const sendReply = async () => { + + if (reply.value.message === null || reply.value.message === '') { + alert('NOK') + return; + } + + sendBtn.value.disabled = true + suspens.value = true + await TicketApi.saveMessage(storeTicket.idTicket, reply.value) + const newList = await TicketApi.getMessages(storeTicket.currentTicket.code, storeTicket.idTicket) + + setTimeout(function () { + reply.value = {} + suspens.value = false + sendBtn.value.disabled = false + messages.value = newList + }, 1000); + + +} @@ -80,6 +106,12 @@ onMounted(async () => { +
  • +
    Envoi en cours
    +
    +
    +
    +
  • @@ -91,8 +123,9 @@ onMounted(async () => {
    - - + +
    @@ -107,5 +140,57 @@ onMounted(async () => { diff --git a/src/services/TicketApi.js b/src/services/TicketApi.js index 5aec186..b58f87e 100644 --- a/src/services/TicketApi.js +++ b/src/services/TicketApi.js @@ -18,7 +18,7 @@ export default { async getMessages(code, id) { // code =2641056 // id = 66088 - const apiUrl = '/App/api.php?prj=pharmamp&controller=TicketingController&method=getMessages&code_business='+code + '&id_business='+id + const apiUrl = '/App/api.php?prj=pharmamp&controller=TicketingController&method=getMessages&code_business=' + code + '&id_business=' + id if (import.meta.env.DEV) { console.log(apiUrl) @@ -31,5 +31,26 @@ export default { } return response.json(); - } + }, + async saveMessage(id, reply) { + const apiUrl = '/App/api.php?prj=pharmamp&controller=TicketingController&method=saveMessage' + if (import.meta.env.DEV) { + console.log(apiUrl) + } + + const postData = new FormData(); + postData.append("id_business", id); + postData.append("data", JSON.stringify(reply)); + + const response = await fetch(apiUrl, { + method: 'POST', + body: postData + }); + + if (import.meta.env.DEV) { + console.log(response.clone().text()) + } + + return response.json(); + }, }