Interf v2
This commit is contained in:
@@ -7,9 +7,12 @@ import {fr} from 'date-fns/locale';
|
||||
|
||||
import {suspens, messages, moveToBottom} from "@/setup/global";
|
||||
|
||||
|
||||
import {useGlobalStore} from "@/stores/global";
|
||||
import {useTicketStore} from "@/stores/ticket";
|
||||
|
||||
const storeTicket = useTicketStore();
|
||||
const store = useGlobalStore();
|
||||
|
||||
const {
|
||||
currentTicket,
|
||||
@@ -18,7 +21,6 @@ const {
|
||||
const brokenAmount = ref(0)
|
||||
|
||||
const actionClaim = computed(()=> {
|
||||
|
||||
if (brokenAmount.value > 10) {
|
||||
return {
|
||||
label : "Demander le retour du colis au client",
|
||||
@@ -51,6 +53,10 @@ onMounted(async () => {
|
||||
})
|
||||
|
||||
const closeClaim = async ()=>{
|
||||
|
||||
suspens.value = true
|
||||
await moveToBottom("body-modal-to-scroll")
|
||||
|
||||
const deliveryData = await TicketApi.validateBrokenIssue(storeTicket.currentTicket.code, storeTicket.idTicket, actionClaim.value.method)
|
||||
|
||||
let trackingNumber = null
|
||||
@@ -63,15 +69,21 @@ const closeClaim = async ()=>{
|
||||
const closeClaim = await TicketApi.closeBrokenIssue(storeTicket.currentTicket.code, storeTicket.idTicket, messages.value[0].claim.refund_mode, trackingNumber, labelUrl)
|
||||
|
||||
if (closeClaim.result === 'OK') {
|
||||
messages.value = await TicketApi.getMessages(storeTicket.currentTicket.code, storeTicket.idTicket)
|
||||
}
|
||||
brokenAmount.value = 0
|
||||
const newList = await TicketApi.getMessages(storeTicket.currentTicket.code, storeTicket.idTicket)
|
||||
|
||||
setTimeout(async function () {
|
||||
suspens.value = false
|
||||
messages.value = newList
|
||||
await moveToBottom("body-modal-to-scroll")
|
||||
}, 1000);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
const getPdfLinkConverter = (idRdv, idDoc, docFileType) =>{
|
||||
return "/Php/ajax.php?prj="+ store.projectName+ '&do2=export_pdf&idbox=11&ID_RDV=' + idRdv + '&idbusiness='+ storeTicket.idTicket + '&id_doc='+idDoc+'&doc_type='+encodeURI(docFileType)
|
||||
}
|
||||
|
||||
|
||||
</script>
|
||||
@@ -118,12 +130,18 @@ const closeClaim = async ()=>{
|
||||
<hr/>
|
||||
{{ message.code_message }}</strong>
|
||||
|
||||
<div v-if="message.document.length >0">
|
||||
<a target="_blank" class="btn me-2 mb-2" :class="document.color" v-for="(document, i) in message.document"
|
||||
<div v-if="message.document.length >0" class="mt-4">
|
||||
<span v-for="(document, i) in message.document">
|
||||
<a target="_blank" class="btn me-2 mb-2" :class="document.color"
|
||||
:key="'document-'+i"
|
||||
:href="'https://gta.parapharmacie-et-medicament.com/interface/ase_get_doc.php?prj=pharmamp&id='+document.id">
|
||||
:href="'https://gta.parapharmacie-et-medicament.com/interface/ase_get_doc.php?prj=pharmamp&display=html&id='+document.id">
|
||||
<Icon width="40" :icon="document.icon"></Icon>
|
||||
</a>
|
||||
<a v-if="document.pdf" target="_blank" class="btn me-2 mb-2 btn-outline-danger" :href="'https://gta.parapharmacie-et-medicament.com'+getPdfLinkConverter(message.id, message.document[0].id, message.document[0].type)">
|
||||
<Icon width="40" icon="fa6-solid:file-pdf"></Icon>
|
||||
</a>
|
||||
</span>
|
||||
|
||||
</div>
|
||||
<div v-if="brokenAmount >0 && i===0">
|
||||
<button class="btn btn-primary" @click="closeClaim">{{actionClaim.label}}</button>
|
||||
|
||||
@@ -94,19 +94,30 @@ export default {
|
||||
},
|
||||
|
||||
async closeBrokenIssue(code, id, clientChoice, trackingNumber, trackingUrl) {
|
||||
const apiUrl = '/App/api.php?prj=pharmamp&controller=TicketingController&method=closeBrokenProductIssue&code_business=' + code + '&id_business=' + id
|
||||
|
||||
const apiUrl = '/App/api.php?prj=pharmamp&controller=TicketingController&method=closeBrokenProductIssue'
|
||||
if (import.meta.env.DEV) {
|
||||
console.log(apiUrl)
|
||||
}
|
||||
|
||||
const response = await fetch(apiUrl)
|
||||
const postData = new FormData();
|
||||
postData.append("id_business", id);
|
||||
postData.append("code_business", code);
|
||||
postData.append("clientChoice", clientChoice);
|
||||
postData.append("trackingNumber", trackingNumber);
|
||||
postData.append("trackingUrl", trackingUrl);
|
||||
|
||||
const response = await fetch(apiUrl, {
|
||||
method: 'POST',
|
||||
body: postData
|
||||
});
|
||||
|
||||
if (import.meta.env.DEV) {
|
||||
console.log(response.clone().text())
|
||||
}
|
||||
|
||||
return response.json();
|
||||
|
||||
},
|
||||
async saveMessage(code, id, quill, attachedDoc, replyOption) {
|
||||
const apiUrl = '/App/api.php?prj=pharmamp&controller=TicketingController&method=saveMessage'
|
||||
|
||||
@@ -4,13 +4,14 @@ import Api from "@/services/Api.js";
|
||||
export const useGlobalStore = defineStore('global', {
|
||||
state: () => ({
|
||||
gulliver: null,
|
||||
gta: {idProject: null, projectName: null},
|
||||
gta: {idProject: null, projectName: null, projectUrl:null},
|
||||
}),
|
||||
getters: {
|
||||
numc: (state) => state.gulliver.numc,
|
||||
url: (state) => state.gulliver.url,
|
||||
idProject: (state) => state.gta.idProject,
|
||||
projectName: (state) => state.gta.projectName,
|
||||
projectUrl: (state) => state.gta.projectUrl,
|
||||
},
|
||||
actions: {
|
||||
async registerSession() {
|
||||
|
||||
Reference in New Issue
Block a user