Допилить скрипт создания заказов

1 000 руб. за проект
27 марта 2024, 18:49 • 6 откликов • 76 просмотров
Всем привет. Есть скрипт, который подключается к эквайрингу и при оформлении заказа выдает платежный шлюз:

$('body').on('submit', '.order__form', function (e) {

e.preventDefault();

var _this = $(e.currentTarget),
data = {
'order': {
'payment_method_id': _this.find('input[name="order-radio"]:checked').val(),
'property': {
'shipping_city': _this.find('input[name="address"]').val()
}
},
'user': {
'name': _this.find('input[name="name"]').val(),
'email': _this.find('input[name="email"]').val(),
'phone': _this.find('input[name="phone"]').val()
}
};

$.request('MakeOrder::onCreate', {
data: data,
success: function(obResponse) {
if (!obResponse ) {
return;
}

if (!!obResponse['X_OCTOBER_REDIRECT']) {
return this.success(obResponse);
}

if (!obResponse.status) {
return;
}

if (_this.find('input[name="order-radio"]:checked').val() == 2) {

const key = '...';
var summ = $('#total').val().replaceAll(/\s/g,'');
var product = $('.order__header-title').text();

const data = {
'testing': '0',
'order_id': obResponse.data.id,
'amount': summ,
'merchant': '...',
'description': 'Заказ '+obResponse.data.id,
'client_phone': _this.find('input[name="phone"]').val(),
'client_email': _this.find('input[name="email"]').val(),
'success_url': window.location.origin + '/order-reserved/' + obResponse.data.key,
'receipt_contact': _this.find('input[name="email"]').val(),
'receipt_items': '[{"name": "'+product+'", "payment_method": "full_prepayment","payment_object": "commodity", "price": '+summ+', "quantity": 1, "sno": "usn_income_outcome", "vat": "none"}]',
'unix_timestamp': Math.floor(Date.now() / 1000)
};


var url = '...';
var form = "<form action='" + url + "' method='post'>";

Object.keys(data).forEach(key => {
form += "<input type='text' name='"+key+"' value='"+data[key]+"' />";
});

form += "<input type='text' name='signature' value='"+GetSignature(key, data)+"' />";
form += "</form>";
form = $(form);
$('body').append(form);
form.submit();

} else {
location = '/order-reserved/'+obResponse.data.key;
}
}
});
});


После оформления заказа формирует чек со списком купленных товаров. Проблема в том, что при покупке нескольких товаров, в чеке их наименования выводятся друг за другом (скриншот: https://disk.yandex.ru/i/S544K1N6ynKX8w). Нужно починить, чтобы наименование и стоимость в чеке выводились как полагается

Отзывы
Avatar r50 a6ce93fe35b158fd29ba0e8681c918c22117160e9586a56eee4ffbc20df9bda1
Фрилансер
Сотрудничество прошло успешно. Заказчик оперативно отвечал на все вопросы, проверил и сразу же оплатил выполненную работу.
8 месяцев назад