diff --git a/src/components/Messenger.vue b/src/components/Messenger.vue index 57684ee..1118c52 100644 --- a/src/components/Messenger.vue +++ b/src/components/Messenger.vue @@ -21,6 +21,7 @@ const { const brokenAmount = ref(0) const actionClaim = computed(()=> { + if (brokenAmount.value > 10 && currentTicket.value.filter2 === 'Produit cassé / défaillant') { return { label : "Demander le retour du colis au client", @@ -60,7 +61,7 @@ const closeClaim = async ()=>{ suspens.value = true await moveToBottom("body-modal-to-scroll") - const deliveryData = await TicketApi.validateBrokenIssue(storeTicket.currentTicket.code, storeTicket.idTicket, actionClaim.value) + const deliveryData = await TicketApi.validateIssueInGulliver(storeTicket.currentTicket.code, storeTicket.idTicket, actionClaim.value) let trackingNumber = null let labelUrl = null @@ -69,7 +70,15 @@ const closeClaim = async ()=>{ trackingNumber = deliveryData.parcel_list.filter(parcel=>parcel.delivery_slip_code === actionClaim.value.parcelType)[0].tracking_number labelUrl = deliveryData.projectHost + deliveryData.parcel_list.filter(parcel=>parcel.delivery_slip_code === actionClaim.value.parcelType)[0].parcel_label_file } - const closeClaim = await TicketApi.closeBrokenIssue(storeTicket.currentTicket.code, storeTicket.idTicket, messages.value[0].claim.refund_mode, trackingNumber, labelUrl) + + let closeClaim + + if(currentTicket.value.filter2 === 'Produit cassé / défaillant'){ + closeClaim = await TicketApi.closeBrokenProductIssue(storeTicket.currentTicket.code, storeTicket.idTicket, messages.value[0].claim.refund_mode, trackingNumber, labelUrl) + } + else{ + closeClaim = await TicketApi.closeMissingProductIssue(storeTicket.currentTicket.code, storeTicket.idTicket, messages.value[0].claim.refund_mode) + } if (closeClaim.result === 'OK') { brokenAmount.value = 0 diff --git a/src/services/TicketApi.js b/src/services/TicketApi.js index 4510ab0..95b5114 100644 --- a/src/services/TicketApi.js +++ b/src/services/TicketApi.js @@ -79,7 +79,7 @@ export default { return response.json(); }, - async validateBrokenIssue(code, id, claimOption) { + async validateIssueInGulliver(code, id, claimOption) { const apiUrl = '/App/api.php?prj=pharmamp&controller=ProxyController&method=' + claimOption.method + '&code_business=' + code + '&id_business=' + id + '&parcelType=' + claimOption.parcelType @@ -96,7 +96,29 @@ export default { return response.json(); }, - async closeBrokenIssue(code, id, clientChoice, trackingNumber, trackingUrl) { + async closeMissingProductIssue(code, id, clientChoice){ + const apiUrl = '/App/api.php?prj=pharmamp&controller=TicketingController&method=closeMissingProductIssue' + if (import.meta.env.DEV) { + console.log(apiUrl) + } + + const postData = new FormData(); + postData.append("id_business", id); + postData.append("code_business", code); + postData.append("clientChoice", clientChoice); + + const response = await fetch(apiUrl, { + method: 'POST', + body: postData + }); + + if (import.meta.env.DEV) { + console.log(response.clone().text()) + } + + return response.json(); + }, + async closeBrokenProductIssue(code, id, clientChoice, trackingNumber, trackingUrl) { const apiUrl = '/App/api.php?prj=pharmamp&controller=TicketingController&method=closeBrokenProductIssue' if (import.meta.env.DEV) {