Перейти к содержимому


Два Вида Доставки Курьером


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 8

#1 57P

57P

    Активный участник

  • Пользователи
  • PipPipPipPip
  • 331 сообщений

Отправлено 05 Май 2017 - 01:17

Здравствуйте, в магазине есть два вида доставки курьером, платная и бесплатная на сумму заказа от 1500руб. эти данные прописаны в доставке. Но никто не читает :(
Задача: При оформление заказа с доставкой курьером система высчитывала, что для бесплатной доставки необходимо добавить в корзину товара на энную сумму.

Пример: Клиент оформляет заказ на 1200руб, он выбирает, способ доставки курьером (стоимость доставки 100руб) и где-то между выбором способа доставки и описанием доставки должна появится надпись: Для бесплатной доставки Вам необходимо добавить товаров еще на 300рублей.

#2 Vaccina

Vaccina

    Активный участник

  • Модераторы
  • 24 353 сообщений

Отправлено 05 Май 2017 - 07:43

Здравствуйте.

Зайдите в раздел main.js - найдите:
// Скрипты для Быстрого заказа
function quickOrderScripts(){
$(document).ready(function(){

после него вставьте:
$('.delivery .mainSelect').change(function () {
	if ($('.delivery .mainSelect option:selected').val() == 351218) {
	  var sum = parseFloat($('.TotalSum:first .num').text());
	  var neednum = 1500.00;
	  if (neednum > sum) {
		var diff = number_format(neednum - sum, 0, '.', ' ');
		$('.currentDeliveryPrice').before('<div id="add_currentDeliveryPrice" class=\'currentDeliveryPricechanger\'>Для <span class=\'orderStageDeliveryZonePrice\'>бесплатной</span> доставки Вам необходимо добавить товаров еще на <span class=\'orderStageDeliveryZonePrice\'><span class=\'changeprice\'>' + diff + '</span> руб.</span></div>');
	  }
	}else {
	  $('#add_currentDeliveryPrice').remove();
	}
  }).trigger('change');

В main.css - найдите:
.orderStageDeliveryZonePrice, .orderStageDeliveryDefaultPrice {
	margin-left: 10px;
	font-size: 18px;
	font-weight: bold;
}

замените на:
.orderStageDeliveryZonePrice, .orderStageDeliveryDefaultPrice {
	font-size: 18px;
	font-weight: bold;
}

Текст будет появляться под способом доставки.

#3 57P

57P

    Активный участник

  • Пользователи
  • PipPipPipPip
  • 331 сообщений

Отправлено 05 Май 2017 - 22:39

Цитата

$('.delivery .mainSelect').change(function () {
        if ($('.delivery .mainSelect option:selected').val() == 351218) {
          var sum = parseFloat($('.TotalSum:first .num').text());
          var neednum = 1500.00;
          if (neednum > sum) {
                var diff = number_format(neednum - sum, 0, '.', ' ');
                $('.currentDeliveryPrice').before('<div id="add_currentDeliveryPrice" class=\'currentDeliveryPricechanger\'>Для <span class=\'orderStageDeliveryZonePrice\'>бесплатной</span> доставки Вам необходимо добавить товаров еще на <span class=\'orderStageDeliveryZonePrice\'><span class=\'changeprice\'>' + diff + '</span> руб.</span></div>');
          }
        }else {
          $('#add_currentDeliveryPrice').remove();
        }
  }).trigger('change');
чето не то, во все случаях он пишет что надо добавить 100руб.

#4 Vaccina

Vaccina

    Активный участник

  • Модераторы
  • 24 353 сообщений

Отправлено 06 Май 2017 - 00:48

Здравствуйте.

$('.delivery .mainSelect').change(function () {
		if ($('.delivery .mainSelect option:selected').val() == 351218) {
		  var sum = parseFloat($('.TotalSum:first .num').text());
		  var neednum = 1500.00;
		  if (neednum > sum) {
				var diff = number_format(neednum - sum, 0, '.', ' ');
				$('.currentDeliveryPrice').before('<div id="add_currentDeliveryPrice" class=\'currentDeliveryPricechanger\'>Для <span class=\'orderStageDeliveryZonePrice\'>бесплатной</span> доставки Вам необходимо добавить товаров еще на <span class=\'orderStageDeliveryZonePrice\'><span class=\'changeprice\'>' + diff + '</span> руб.</span></div>');
		  }
		}else {
		  $('#add_currentDeliveryPrice').remove();
		}
  }).trigger('change');

замените на:
$('.delivery .mainSelect').change(function () {
		if ($('.delivery .mainSelect option:selected').val() == 351218) {
		  var sum = parseFloat($('.TotalSum:first .num').text());
		  var neednum = 1500.00;
		  if (neednum > sum) {
				var diff = number_format(neednum - sum, 0, '.', ' ');
				$('.currentDeliveryPrice').before('<div id="add_currentDeliveryPrice" class=\'currentDeliveryPricechanger\'>Для <span class=\'orderStageDeliveryZonePrice\'>бесплатной</span> доставки Вам необходимо добавить товаров еще на <span class=\'orderStageDeliveryZonePrice\'>' + diff + ' руб.</span></div>');
		  }
		}else {
		  $('#add_currentDeliveryPrice').remove();
		}
  }).trigger('change');


#5 57P

57P

    Активный участник

  • Пользователи
  • PipPipPipPip
  • 331 сообщений

Отправлено 06 Май 2017 - 16:21

уже близко :)
1. текст дублируется
2. сделать размер шрифта одинаковым  размером, оставить только жирный шрифт(как есть)
3. сделать отступ
4. заходим в корзину, нажимаем оформить, выбираем почту России, и там речь о бесплатной доставке, а ее там быть не должно :/
5. Когда заказ в корзине больше 1500, текст должен пропасть, а он пишет что надо добавить еще ~1497руб


а еще можно код купона и кнопку оформить заказ перенести ниже поля комментария.

#6 57P

57P

    Активный участник

  • Пользователи
  • PipPipPipPip
  • 331 сообщений

Отправлено 10 Май 2017 - 20:03

Up

#7 Vaccina

Vaccina

    Активный участник

  • Модераторы
  • 24 353 сообщений

Отправлено 11 Май 2017 - 08:06

Здравствуйте.

Зайдите в раздел Сайт - Редактор шаблонов - main.js - найдите:

$('.delivery .mainSelect').change(function () {
				if ($('.delivery .mainSelect option:selected').val() == 351218) {
				  var sum = parseFloat($('.TotalSum:first .num').text());
				  var neednum = 1500.00;
				  if (neednum > sum) {
								var diff = number_format(neednum - sum, 0, '.', ' ');
								$('.currentDeliveryPrice').before('<div id="add_currentDeliveryPrice" class=\'currentDeliveryPricechanger\'>Для <span class=\'orderStageDeliveryZonePrice\'>бесплатной</span> доставки Вам необходимо добавить товаров еще на <span class=\'orderStageDeliveryZonePrice\'>' + diff + ' руб.</span></div>');
				  }
				}else {
				  $('#add_currentDeliveryPrice').remove();
				}
  }).trigger('change');

$(document).ready(function(){
$('.delivery .mainSelect').change(function () {
				if ($('.delivery .mainSelect option:selected').val() == 352886) {
				  $('.quickDeliveryCity, .quickDeliveryZipCode, .deliveryConvenientDate').hide();  
				  $('#quickDeliveryAddress').text('г.Владимир ул.Усти-на-Лабе д.23');  
				}else if($('.delivery .mainSelect option:selected').val() == 351218) {
				  $('.quickDeliveryCity, .quickDeliveryZipCode').hide();
				  $('.deliveryConvenientDate').show();
				  $('#quickDeliveryAddress').text(' ');
				}else if($('.delivery .mainSelect option:selected').val() == 355485) {
				  $('.deliveryConvenientDate').hide();
				  $('.quickDeliveryCity, .quickDeliveryZipCode').show();
				  $('#quickDeliveryAddress').text(' ');
				} else{
				  $('.quickDeliveryCity, .quickDeliveryZipCode, .deliveryConvenientDate').show();
				  $('#quickDeliveryAddress').text(' ');
				}
  }).trigger('change');
});

замените на:
$(document).ready(function(){
$('.delivery .mainSelect').change(function () {
				if ($('.delivery .mainSelect option:selected').val() == 352886) {
				  $('.quickDeliveryCity, .quickDeliveryZipCode, .deliveryConvenientDate').hide();   
				  $('#quickDeliveryAddress').text('г.Владимир ул.Усти-на-Лабе д.23');   
				  $('#add_currentDeliveryPrice').remove();
				}else if($('.delivery .mainSelect option:selected').val() == 351218) {
				 var sum = parseFloat($('.TotalSum:first .num').text().replace(',', '.'));
				  var neednum = 1500.00;
				  if (neednum > sum) {
								var diff = number_format(neednum - sum, 0, '.', ' ');
								$('.currentDeliveryPrice').before('<div id="add_currentDeliveryPrice">Для <span style=\'font-weight:bold;\'>бесплатной</span> доставки Вам необходимо добавить товаров еще на <span style=\'font-weight:bold;\'>' + diff + ' руб.</span></div><br/>');
				  }
				  $('.quickDeliveryCity, .quickDeliveryZipCode').hide();
				  $('.deliveryConvenientDate').show();
				  $('#quickDeliveryAddress').text(' ');
				}else if($('.delivery .mainSelect option:selected').val() == 355485) {
				  $('.deliveryConvenientDate').hide();
				  $('.quickDeliveryCity, .quickDeliveryZipCode').show();
				  $('#quickDeliveryAddress').text(' ');
				  $('#add_currentDeliveryPrice').remove();
				} else{
				  $('.quickDeliveryCity, .quickDeliveryZipCode, .deliveryConvenientDate').show();
				  $('#quickDeliveryAddress').text(' ');
				  $('#add_currentDeliveryPrice').remove();
				}
  }).trigger('change');
});


#8 57P

57P

    Активный участник

  • Пользователи
  • PipPipPipPip
  • 331 сообщений

Отправлено 11 Май 2017 - 08:44

уже лучше) но все же еще чуть чуть
когда в корзине до 1000 руб, считает норм, а когда больше то пишет что надо набрать еще на 1499руб
а еще можно код купона и кнопку оформить заказ перенести ниже поля комментария.

#9 Vaccina

Vaccina

    Активный участник

  • Модераторы
  • 24 353 сообщений

Отправлено 12 Май 2017 - 06:04

Здравствуйте.

В данном блоке строку:
var sum = parseFloat($('.TotalSum:first .num').text().replace(',', '.'));

замените на:
var sum = parseFloat($('.TotalSum:first .num').text().replace(',', '.').replace(' ', ''));

На счет купона и кнопки, зайдите в раздел Сайт - Редактор шаблонов - Быстрый заказ - найдите:
{% ENDIF %}
		  </ul>
		</div>
	  </div>
	 
	  <div class="col-xs-12">
		<!-- Если в тарифном плане подключен модуль скидок по купонам и суммам заказов -->
		{% IF TARIFF_FEATURE_DISCOUNT_COUPONS %}
		  <!-- Если скидки по купонам активированы в панели управления магазином -->
		  {% IF ORDER_DISCOUNT_COUPON_IS_ENABLED %}
			<div class="coupons">
			  <h3 class="title"><span>Купон на скидку</span></h3>
			  <div class="couponBlock">
				  <label for="quick_form_coupon_code">Код купона</label>
				  <div class="input-box">
					<input type="text" id="quick_form_coupon_code" name="form[coupon_code]" value="{ORDER_FORM_COUPON_CODE}" class="inputText" />
				  </div>
			  </div>
			</div>
		  {% ENDIF %}
		{% ENDIF %}
		<!-- END Если в тарифном плане подключен модуль скидок по купонам и суммам заказов -->
		<button type="submit" class="button button2" title="Оформить заказ">Оформить заказ</button>
	  </div>

замените на:
{% ENDIF %}
		  </ul>
		</div>
 
		<!-- Если в тарифном плане подключен модуль скидок по купонам и суммам заказов -->
		{% IF TARIFF_FEATURE_DISCOUNT_COUPONS %}
		  <!-- Если скидки по купонам активированы в панели управления магазином -->
		  {% IF ORDER_DISCOUNT_COUPON_IS_ENABLED %}
			<div class="coupons">
			  <h3 class="title"><span>Купон на скидку</span></h3>
			  <div class="couponBlock">
				  <label for="quick_form_coupon_code">Код купона</label>
				  <div class="input-box">
					<input type="text" id="quick_form_coupon_code" name="form[coupon_code]" value="{ORDER_FORM_COUPON_CODE}" class="inputText" />
				  </div>
			  </div>
			</div>
		  {% ENDIF %}
		{% ENDIF %}
		<!-- END Если в тарифном плане подключен модуль скидок по купонам и суммам заказов -->
		<button type="submit" class="button button2" title="Оформить заказ">Оформить заказ</button>
	  </div>





Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных