<div class="table-donuts t-text"></div>
<script>
$(document).ready(function(){
let donutName = [
'Храм Преображения Господня в с. Замытье',
'Храмовый комплекс Михайло-Прудовского погоста в д.Кузнецово',
'Святой источник Тихвинской иконы Божией Матери'
];
//Получаем данные при загрузке страницы
setTimeout(function () {
loadData();
//writeSumm(obj);
//createTable(obj);
}, 2000);
//Фунцция получения данных
function loadData() {
fetch(
"https://opensheet.elk.sh/1I8hjBh1N6E2nxq9qkuV2Xero-cMjG1hqslBmjuwG9yE/Leads"
)
.then((res) => res.json())
.then((data) => {
if(data.error!=undefined || data.length==0 ){
console.log('Table not found');
}else{
writeSumm(data);
createTable(data)
data.forEach((row) => { });
};
});
};
//Функция вывода итоговых сумм
let summPlace = [];
function writeSumm(em){
for(let i = 0; i < donutName.length; i++) {
let price = 0;
$.each(em, function( key, value ) {
let productName = em[key].products.split('(');
productName = productName[0].trim();
if( donutName[i] == productName ) {
price+= +em[key].price;
};
});
summPlace.push(price);
};
$('.uc-donut-summ .t948__descr:eq(0) strong').html(summPlace[0]+' р.');
$('.uc-donut-summ .t948__descr:eq(1) strong').html(summPlace[1]+' р.');
$('.uc-donut-summ .t948__descr:eq(2) strong').html(summPlace[2]+' р.');
$('.t948__descr').addClass('show-summ-txt');
};
//Функция формирования таблицы
function createTable(em){
let tableHeader = `
<div class="table-header">
<div class="table-date">Дата</div>
<div class="table-summ">Сумма</div>
<div class="table-contact">ФИО</div>
<div class="table-adress">Адрес</div>
<div class="table-object">Объект</div>
</div>`;
let tableContent = '';
//Формируем текущую дату в нужном формате
let timeZone = +10; // Разница во времени UTC+3 по МСК
let day = new Date();
let utc = day.getTime() + (day.getTimezoneOffset() * 60000);
let DateOffset = new Date(utc + (3600000*timeZone));
DateOffset.setDate(DateOffset.getDate()-30);
Month = DateOffset.getMonth();
Day = DateOffset.getDate();
Year = DateOffset.getFullYear();
let zMonth = ("0" + (Month+1)).slice(-2);
let zDate = ("0" + (Day)).slice(-2);
//Получаем конечную дату через 30 дней и текущую дату заявки в таблице
let lastDate = Year+'-'+zMonth+'-'+zDate; lastDate = new Date(lastDate);
//Получаем длину таблицы
let lnObj = Object.keys(em).length;
let difference = 1;
let dateTwins = '';
for (let i = lnObj-1 ; difference >= 0; i--){
//Получаем дату последней записи
let tableDate = em[i]['sent'];
tableDate = tableDate.replace(/ [\s\S]+/, '');
let nDateFormat = tableDate.split('-');
tableDate = new Date(tableDate);
//Вычисляем разницу между датами
difference = (tableDate-lastDate)/86400000;
if(difference<0) break;//Если вышли за пределы даты, то прекращаем цикл
let tDate = nDateFormat[2]+'-'+nDateFormat[1]+'-'+nDateFormat[0];
if(tDate==dateTwins){
tDate='';
}else{
dateTwins = tDate
};
let tSumm = em[i].price;
let tName = em[i].Name;
let tAdress = em[i].City;
if(tAdress==undefined) tAdress='-';
let tObject = em[i].products.split('(');
tObject = tObject[0].trim();
tableContent += `<div class="table-content">
<div class="table-date">${tDate}</div>
<div class="table-summ">${tSumm}</div>
<div class="table-contact">${tName}</div>
<div class="table-adress">${tAdress}</div>
<div class="table-object">${tObject}</div>
</div>`;
if(i==0) break; //TЕсли запись единственная, то прерываем цикл
};
let completeTable = tableHeader + tableContent;
$('.table-donuts').html(completeTable);
};
});
</script>
<style>
.t-input-group.t-input-group_pm {
display: none;
}
.t948__descr {
opacity:0;
pointer-events:none;
}
.t948 .show-summ-txt {
opacity:1;
pointer-events:auto;
}
.table-header, .table-content {
display: grid;
grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
grid-gap: 5px;
}
.table-name {
text-align: left;
}
.table-donuts {
display: grid;
grid-gap: 5px;
padding: 50px;
}
.table-header div, .table-content div {
padding: 6px 10px;
display: flex;
align-items: center;
}
.table-donuts .table-name {
justify-content: flex-start;
}
.table-header>div {
font-weight: 600;
}
.table-donuts {
background-color: #f2e2bc;
border-radius: 30px;
font-size: 20px;
}
.table-content {
font-size: 16px;
}
.table-summ, .table-contact, .table-adress, .table-object {
justify-content: center;
text-align: center;
}
@media screen and (max-width: 960px){
.uc-donuts-code .t-col {
overflow-x: auto;
}
.table-donuts {
min-width: 600px;
}
}
</style>
Храм Преображения
Господня в с. Замытье
.
0 р.
Храмовый комплекс
Михайло-Прудовского
погоста в д.Кузнецово
0 р.
Святой источник
Тихвинской иконы
Божией Матери
0 р.