code added
This commit is contained in:
+271
@@ -0,0 +1,271 @@
|
||||
async function order_summary() {
|
||||
|
||||
let cookieRes = COOKIE_HELPER_ACTIONS.getCookie();
|
||||
let { userId } = cookieRes;
|
||||
let filesInputSupport = [];
|
||||
|
||||
|
||||
// let res = await API_SERVICES_ACTIONS.getAPIService(`apis/v4/Bizgaze/integrations/products/salesorderdetailsbyorgid/organizationid/${userId}`,true);
|
||||
// https://templateserver.bizgaze.com/apis/v4/bizgaze/integrations/products/getordersbyid/organizationid/{organizationid}/orderno/{orderno}
|
||||
let orderno = window.location.hash.split('#')[1];
|
||||
let res = await API_SERVICES_ACTIONS.getAPIService(`apis/v4/bizgaze/integrations/products/getordersbyid/organizationid/${userId}/orderno/${orderno}`);
|
||||
if (res.isError) {
|
||||
return;
|
||||
}
|
||||
const orderDetailsres = JSON.parse(res.response.result);
|
||||
|
||||
let new_arrr = orderDetailsres;
|
||||
console.log(new_arrr)
|
||||
let orderNumber = window.location.hash.split('#')[1];
|
||||
let filteredOrders = new_arrr.filter(function (order) {
|
||||
return order.OrderNo === orderNumber;
|
||||
});
|
||||
|
||||
for (let i = 0; i < filteredOrders.length; i++) {
|
||||
let order = filteredOrders[i];
|
||||
let Delivery_status = order.stageshortcode
|
||||
let deliverdCard = appendItemHTML(order);
|
||||
$('.deliverd-card').append(deliverdCard)
|
||||
if (Delivery_status == 'CMD') {
|
||||
$('.delivery_status').html('Deliverd')
|
||||
}
|
||||
if (Delivery_status == 'APL') {
|
||||
$('.delivery_status').html('Approval')
|
||||
}
|
||||
}
|
||||
|
||||
$('.supportBtn').click(function (e) {
|
||||
let parentEl = $(e.target).parents('.card-body');
|
||||
|
||||
const orderName = $(parentEl).find('.ordernameModal').text();
|
||||
const img = $(parentEl).find('.order_img').attr('src');
|
||||
$('#exampleModalsupport').find('.order_img').attr('src', img);
|
||||
|
||||
$('.modalitemname').text(orderName);
|
||||
|
||||
const orderQty = $(parentEl).find('.orderqtymodalinfo').text();
|
||||
const orderPrice = $(parentEl).find('.order_price').text();
|
||||
const [symbol, price] = getCurrencySymbol(orderPrice)
|
||||
$('.modalitemqty').html(orderQty);
|
||||
$('.modalprice').html(`${symbol} ${price}`);
|
||||
console.log(orderName);
|
||||
});
|
||||
|
||||
|
||||
// modal start
|
||||
|
||||
|
||||
// files append html ui
|
||||
function getInputsListHTML(arr){
|
||||
let html = '';
|
||||
|
||||
for(let i=0;i<arr.length;i++){
|
||||
const {FileName,FileType} = arr[i];
|
||||
html += `<span class='p-1 rounded text-truncate containerfilesupport' data-name="${FileName}.${FileType}" >
|
||||
<span class="border p-1 rounded"> <span class=" w-50 filenamesupportticket"> ${FileName}.${FileType}</span>
|
||||
<span class=' text-center bg-white rounded removeFilesupportticket'>
|
||||
<i class='p-1 fa fa-close'></i>
|
||||
</span></span>
|
||||
</span>`
|
||||
}
|
||||
|
||||
return html;
|
||||
}
|
||||
|
||||
// files onchange handler for input files
|
||||
async function fileUploadSaveHandler(e){
|
||||
|
||||
const promiseFiles = await getMulFileToGetBase64(e);
|
||||
// console.log(promiseFiles,'promisepromise');
|
||||
filesInputSupport = promiseFiles;
|
||||
|
||||
let html = getInputsListHTML(filesInputSupport);
|
||||
|
||||
$('.inputlistsupportcontainer').html(html);
|
||||
|
||||
$('.removeFilesupportticket').off('click').click(function (e){
|
||||
let el = $(this);
|
||||
|
||||
let nameWithExt = $(el).parents('.containerfilesupport').data('name')
|
||||
console.log(nameWithExt);
|
||||
|
||||
filterRemoveInputsFiles(nameWithExt)
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
function filterRemoveInputsFiles(nameWithExt){
|
||||
console.log("okay");
|
||||
console.log(filesInputSupport);
|
||||
filesInputSupport = filesInputSupport.filter(function (e){
|
||||
const {FileName,FileType} = e;
|
||||
const str = `${FileName}.${FileType}`;
|
||||
if(str != nameWithExt) return e;
|
||||
});
|
||||
|
||||
console.log(filesInputSupport);
|
||||
}
|
||||
|
||||
$('#supportattachfile').off().change(function (e){
|
||||
debugger;
|
||||
if(!e.target.files.length) return;
|
||||
fileUploadSaveHandler(e);
|
||||
});
|
||||
|
||||
|
||||
|
||||
// submit support ticket
|
||||
$('.submitsupportticket').off('click').click(async function (e) {
|
||||
console.log("tick");
|
||||
|
||||
let supportGroup = $('#supportgroups').val();
|
||||
let priortyGroup = $('#supportlevel').val();
|
||||
let description = $('.desmodalsupportarea').val()?.trim();
|
||||
|
||||
|
||||
|
||||
let isErrorValidtion = false;
|
||||
if (!supportGroup) {
|
||||
isErrorValidtion = true;
|
||||
$('#supportgroups').parent().find('.invalid-feedback').addClass('d-block');
|
||||
} else {
|
||||
$('#supportgroups').parent().find('.invalid-feedback').removeClass('d-block');
|
||||
}
|
||||
|
||||
if (!priortyGroup) {
|
||||
isErrorValidtion = true;
|
||||
$('#supportlevel').parent().find('.invalid-feedback').addClass('d-block');
|
||||
} else {
|
||||
$('#supportlevel').parent().find('.invalid-feedback').removeClass('d-block');
|
||||
}
|
||||
|
||||
if (!description) {
|
||||
isErrorValidtion = true;
|
||||
$('.desmodalsupportarea').parent().find('.invalid-feedback').addClass('d-block');
|
||||
} else {
|
||||
$('.desmodalsupportarea').parent().find('.invalid-feedback').removeClass('d-block');
|
||||
}
|
||||
|
||||
if (isErrorValidtion) return;
|
||||
|
||||
const payload = {
|
||||
ticketgroupid: Number(supportGroup),
|
||||
description: description,
|
||||
documents: filesInputSupport.length > 0 ? filesInputSupport : 0,
|
||||
PriorityId: Number(priortyGroup),
|
||||
ticketid: 0,
|
||||
contactid: Number(userId)
|
||||
}
|
||||
$('.supportticketsubmit').removeClass('d-none');
|
||||
$('.supportticketsubmitbtn').addClass('d-none');
|
||||
|
||||
$('.closesupportticket').attr('disabled', true);
|
||||
console.log(payload);
|
||||
const res = await API_SERVICES_ACTIONS.postAPIService(`apis/v4/hyperfusion/hireserver/machines/saveticket`, payload);
|
||||
|
||||
console.log(res);
|
||||
|
||||
if (res.isError) {
|
||||
toasterHelper("error", res.errorMsg, `toast-top-right`);
|
||||
$('.supportticketsubmit').addClass('d-none');
|
||||
$('.supportticketsubmitbtn').removeClass('d-none');
|
||||
$('.closesupportticket').attr('disabled', false);
|
||||
return;
|
||||
}
|
||||
$('.supportticketsubmit').addClass('d-none');
|
||||
$('.supportticketsubmitbtn').removeClass('d-none');
|
||||
$('.closesupportticket').attr('disabled', false);
|
||||
toasterHelper("success", 'Ticket successfully submitted!', `toast-top-right`);
|
||||
|
||||
// $('#supportgroups').val(null);
|
||||
// $('#supportlevel').val(null);
|
||||
$('.desmodalsupportarea').val('');
|
||||
$("#exampleModalsupport .closesupportticket").click()
|
||||
});
|
||||
|
||||
|
||||
|
||||
// modal end
|
||||
|
||||
$('.warrantybtn').click(function (e) {
|
||||
let parentEl = $(e.target).parents('.card-body');
|
||||
|
||||
const orderName = $(parentEl).find('.ordernameModal').text();
|
||||
|
||||
$('#warrenymodalname').html(orderName);
|
||||
});
|
||||
|
||||
let summary = `<div class="bg-gradient-anwi card-body"><div><p class="mb-0 fw-500">Order : <span>${orderNumber}</span><small class=" "> ( ${filteredOrders.length} items )</samll><p class="mb-0 ">Order placed on ${filteredOrders[0].OrderDate}</p></div>`;
|
||||
|
||||
$('.Order_details_section .order_tax').html(filteredOrders[0].taxamount)
|
||||
$('.Order_details_section .Order_total').html(filteredOrders[0].nettotal)
|
||||
$('.Order_details_section .order_price').html(filteredOrders[0].assessableamount)
|
||||
$('.Order_details_section .order-summary').html(summary);
|
||||
|
||||
$('.back_to_orders').click(function () {
|
||||
$(this).attr('href', './myaccount.html')
|
||||
});
|
||||
|
||||
function appendItemHTML(order) {
|
||||
|
||||
return `<div class="card rounded-0 bg-white mb-3 "><div class=card-body><div class="align-items-center row"><div class=col-md-6><div class=d-flex><img class=img-fluid src=""></div><div class="d-flex align-items-center"><div class="text-secondary">Delivery Status : </div><div class=" delivery_status text-blue fw-600" data-status="${order.stageshortcode}"></div></div></div><div class="col-md-6 text-end"><button data-bs-toggle="modal" data-bs-target="#exampleModalwarrenty" class=" bg-gradient-anwi-outline btn-sm btn warrantybtn ">Claim warranty</button> <button data-bs-toggle="modal" data-bs-target="#exampleModalsupport" class="supportBtn bg-gradient-anwi-outline btn-sm btn ">Support</button></div></div><div><small class=" text-secondary me-2">Delivered To : </small><small class="fw-600 user_name">${order.OrganizationName}</div><div class="row pb-4 pb-md-0 align-items-center"><div class="col-md-4 text-center"><img class="img-fluid order_img w-75"src=https://appassets.bizgaze.app/${order.imageurl?.replaceAll(" ", "%20")}></div><div class="col-md-8 position-relative"><small class=" mb-0 order_itemname"><span ><span class="ordernameModal">${order.itemname}</span> (<span class="orderqtymodalinfo">${order.Quantity}</span> items)</span><small class=" align-items-center d-flex fw-600 mb-3"><svg class="bi bi-currency-rupee"fill=currentColor height=16 viewBox="0 0 16 16"width=16 xmlns=http://www.w3.org/2000/svg><path d="M4 3.06h2.726c1.22 0 2.12.575 2.325 1.724H4v1.051h5.051C8.855 7.001 8 7.558 6.788 7.558H4v1.317L8.437 14h2.11L6.095 8.884h.855c2.316-.018 3.465-1.476 3.688-3.049H12V4.784h-1.345c-.08-.778-.357-1.335-.793-1.732H12V2H4v1.06Z"></path></svg><small class="order_price fs-6">${order.itemtotal}</small><p class=" mb-0 close_exchange position-absolute d-none text-secondary">Return/Exchange window closed on Friday,24 March <a class=text-primary href=#>Why?</a></div></div></div></div>`;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
async function supportModalInit() {
|
||||
$.fn.modal.Constructor.prototype.enforceFocus = function () { };
|
||||
let ticketGroupRes = await API_SERVICES_ACTIONS.getAPIService(`apis/v4/anwisystems/integrations/anwiauth/getticketgoups`);
|
||||
|
||||
|
||||
if (ticketGroupRes.isError) {
|
||||
console.log(ticketGroupRes.errorMsg);
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
ticketGroupRes = JSON.parse(ticketGroupRes.response.result);
|
||||
|
||||
console.log(ticketGroupRes);
|
||||
|
||||
|
||||
|
||||
let htmlTGroup = '';
|
||||
for (let i = 0; i < ticketGroupRes.length; i++) {
|
||||
htmlTGroup += `<option value="${ticketGroupRes[i].ticketgroupid}" data-id="${ticketGroupRes[i].ticketgroupid}">${ticketGroupRes[i].ticketgroupname}</option>`
|
||||
}
|
||||
|
||||
$('#supportgroups').html(htmlTGroup);
|
||||
|
||||
// priopty
|
||||
|
||||
let prioritiesRes = await API_SERVICES_ACTIONS.getAPIService(`apis/v4/anwisystems/integrations/anwiauth/getticketpriorities`);
|
||||
|
||||
if (prioritiesRes.isError) {
|
||||
console.log(prioritiesRes.errorMsg);
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
prioritiesRes = JSON.parse(prioritiesRes.response.result);
|
||||
|
||||
console.log(prioritiesRes, 'prioritiesRes');
|
||||
|
||||
|
||||
let htmlTpriorites = '';
|
||||
for (let i = 0; i < prioritiesRes.length; i++) {
|
||||
htmlTpriorites += `<option value="${prioritiesRes[i].priorityid}" data-id="${prioritiesRes[i].priorityid}">${prioritiesRes[i].priorityname}</option>`
|
||||
}
|
||||
|
||||
$('#supportlevel').html(htmlTpriorites);
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
supportModalInit();
|
||||
}
|
||||
order_summary()
|
||||
Verwijs in nieuw issue
Block a user