Чек ККМ / Выбор формы оплаты / Модуль формы

файл

#Область ОбработчикиСобытийФормы

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
	
	Если Параметры.Свойство("АвтоТест") Тогда
		Возврат;
	КонецЕсли;
	
	Наличные                    = Параметры.Параметр.Наличные.Значение;
	Элементы.Наличные.Видимость = Параметры.Параметр.Наличные.Видимость;
	
	ПлатежныеКарты                    = Параметры.Параметр.ПлатежныеКарты.Значение;
	Элементы.ПлатежныеКарты.Видимость = Параметры.Параметр.ПлатежныеКарты.Видимость;
	
	КартаЛояльности = Параметры.Параметр.БонусныеБаллы.Параметр;
	
	Если ЗначениеЗаполнено(КартаЛояльности) И ПолучитьФункциональнуюОпцию("ИспользоватьБонусныеПрограммыЛояльности") Тогда
		
		ПараметрыКартыЛояльности = БонусныеБаллыСервер.БонуснаяПрограммаКартыЛояльности(КартаЛояльности);
		Если ЗначениеЗаполнено(ПараметрыКартыЛояльности.БонуснаяПрограммаЛояльности) Тогда
			
			ОстаткиБонусныхБаллов = БонусныеБаллыСервер.ОстаткиИДвиженияБонусныхБаллов(ПараметрыКартыЛояльности.БонуснаяПрограммаЛояльности, ПараметрыКартыЛояльности.Партнер);
			
			Остаток = ОстаткиБонусныхБаллов[0].Сумма;
			ОстатокБонусныхБаллов = НСтр("ru = 'Остаток:'") + " " +  СтроковыеФункцииКлиентСервер.ЧислоЦифрамиПредметИсчисленияПрописью(Остаток, НСтр("ru = 'балл, балла, баллов'"));
			
			БонусныеБаллы                                        = Параметры.Параметр.БонусныеБаллы.Значение И Остаток > 0;
			Элементы.ГруппаОплатаБонуснымиБаллами.Видимость      = Параметры.Параметр.БонусныеБаллы.Видимость;
			Элементы.ГруппаОплатаБонуснымиБаллами.Доступность    = Остаток > 0;
			Элементы.ДекорацияНачислениеНеПроизводится.Видимость = ПараметрыКартыЛояльности.НеНачислятьБаллыПриОплатеБонусами;
			
		Иначе
			БонусныеБаллы = Ложь;
			Элементы.ГруппаОплатаБонуснымиБаллами.Видимость = Ложь;
		КонецЕсли;
		
	Иначе
		БонусныеБаллы = Ложь;
		Элементы.ГруппаОплатаБонуснымиБаллами.Видимость = Ложь;
		Элементы.ДекорацияНачислениеНеПроизводится.Видимость = Ложь;
	КонецЕсли;
	
	ПодарочныеСертификаты                    = Параметры.Параметр.ПодарочныеСертификаты.Значение;
	Элементы.ПодарочныеСертификаты.Видимость = Параметры.Параметр.ПодарочныеСертификаты.Видимость;

	СобытияФорм.ПриСозданииНаСервере(ЭтаФорма, Отказ, СтандартнаяОбработка);

КонецПроцедуры

#КонецОбласти

#Область ОбработчикиКомандФормы

&НаКлиенте
Процедура Выбрать(Команда)
	
	Оплата = Новый Структура;
	Оплата.Вставить("Наличные",              Наличные);
	Оплата.Вставить("БонусныеБаллы",         БонусныеБаллы);
	Оплата.Вставить("ПлатежныеКарты",        ПлатежныеКарты);
	Оплата.Вставить("ПодарочныеСертификаты", ПодарочныеСертификаты);
	
	Закрыть(Оплата);
	
КонецПроцедуры

&НаКлиенте
Процедура Отмена(Команда)
	
	Закрыть(Неопределено);
	
КонецПроцедуры

&НаКлиенте
Процедура Подключаемый_ВыполнитьПереопределяемуюКоманду(Команда)
	
	СобытияФормКлиент.ВыполнитьПереопределяемуюКоманду(ЭтаФорма, Команда);
	
КонецПроцедуры

#КонецОбласти

Связанные материалы