Загрузка данных


<!DOCTYPE html>
<%@ taglib prefix="tags" tagdir="/WEB-INF/tags" %>

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<%@ taglib prefix="s" uri="http://www.springframework.org/tags" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ page session="true" language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>

<html lang="ru">
		
	
    <jsp:include page="head.jsp"/>
		<style>        
        
        .row-form {
            margin-bottom: 50px;
        }
    
        .form {
            display: flex;
            flex-direction: column;
            gap: 30px;
        }

        .search-items {
            display: flex;
            flex-wrap: wrap;
            gap: 10px;
        }
    
        .control-label {
            color: #7c7c7c;
        }
    
        .form-btns {
            display: flex;
            justify-content: space-between;
        }
        
        .btn-search {
            display: flex;
            align-items: center;
            gap: 10px;
            border: none;
            border-radius: 4px;
            padding: 8px 10px;
            color: #fff;
            transition: 0.2s;
        }

        #searchBtn:hover {
            background-color: #5cb85c;
            box-shadow: 0 0 0 1px #5cb85c;
        }
    
        #searchBtn:active {
            background-color: #5cb85c;
            box-shadow: 0 0 0 0 #5cb85c;
        }

        #cleanBtn:hover {
            background-color: #f0ad4e;
            box-shadow: 0 0 0 1px #f0ad4e;
        }
    
        #cleanBtn:active {
            background-color: #f0ad4e;
            box-shadow: 0 0 0 0 #f0ad4e;
        }
    
        .btn-text {
            display: inline-block;
            line-height: 0;
        }
    
        .btn-icon {
            display: inline-block;
            width: 16px;
            height: 16px;
        }
    
        .btn-svg {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: 0.2s;
        }
    </style>
		<style>
        div {
            scrollbar-width: thin;
        }
            
        
        thead{
        		background-color: #f0f5ff;
            color: #2b2b2b;
        }
        
        .dataTables_info{
            margin-top:10px;
        }

        .table-striped tbody tr.active:nth-child(odd) td, .table-striped tbody tr.active:nth-child(odd) th {
            background-color: #2a87de;
        }

        .table-striped tbody tr.active:nth-child(odd) td, .table-striped tbody tr.active:nth-child(odd) th {
            background-color:#2a87de;
        }

        .table tbody tr.active:hover td, .table tbody tr.active:hover th {
            background-color:#2a87de !important;
        }

        .table tbody tr.active td, .table tbody tr.active th {
            background-color: #2a87de !important;
            color: white;
        }

        table {
            background-color: white;
        }

        .table-striped>tbody>tr:nth-child(odd)>td, .table-striped>tbody>tr:nth-child(odd)>th {
            background-color: white;
        }

        .table-striped>tbody>tr:nth-child(odd):hover>td, .table-striped>tbody>tr:nth-child(odd)>th {
            background-color: #ccddffd3;
        }

        .table-hover>tbody>tr:hover>td, .table-hover>tbody>tr:hover>th {
            background-color:  #ccddffd3; 
        }
			
			  #queryTableFilterContainer_Yg9Gc4Jd {
					  display: none !important;
				}
			
				.btn-blue-edit {
				    background-color: #2a87de;
					  color: #fff;
					  transition: 0.2s;
				}
			
			  .btn-blue-edit:hover,
			  .btn-blue-edit:focus {
						background-color: #2a87de;
				    color: #fff;
						box-shadow: 0 0 0 1px #2a87de;
				}
			
			  .btn-blue-edit:active {
				    background-color: #2a87de;
				    color: #fff;
					  box-shadow: 0 0 0 0 #2a87de;
				}
    </style>
    <body>
        <script type="text/javascript" src="<c:url value='/js/${version}/queryAction.js'/>"></script>
        <script type="text/javascript" src="<c:url value='/js/${version}/queryTable.js'/>"></script>
				<script type="text/javascript" src="<c:url value='/js/${version}/jquery.mask.min.js'/>"></script>
	<script>
		/*(function ($) {
			$.fn.blockingButtons = function () {
				return this.each(function() {
					const $container = $(this);
					let isLocked = false;
					
					$container.on('click', 'button', function(e) {
						if (isLocked) {
							e.preventDefault();
							e.stopImmediatePropagation();
							return;
						}
						
						isLocked = true;
						
						try {
							
						} finally {
							setTimeout(() => {
								isLocked = false;
							}, 0)
						}
					})
				})
			}
		})(jQuery);*/
		
		class ButtonBlocker {
			constructor(container, opts = {}) {
				this.el = typeof container === 'string' ? document.querySelector(container) : container;
				if (!this.el) throw new Error('Container not found');

				this.locked = false;
				this.opts = Object.assign({
					lockClass: 'is-locked',
					autoUnlock: false, //true, // авторазблокировка для синхронных функций
				}, opts);

				this._attach();
			}

			_attach() {
				//console.log('click1111');
				this.el.addEventListener('click', (e) => {
				//console.log('click222');
					const isButton = e.target.closest('button');
					if (!isButton) return;
				//console.log('click333');

					if (this.locked) {
						e.preventDefault();
						e.stopPropagation();
						e.stopImmediatePropagation();
						return;
					}

					this.lock();

					if (this.opts.autoUnlock) {
						setTimeout(() => this.unlock(), 0); 
					}
				}, true); // capture = true, глобально блокирует блок кнопок до любых событий. on('click') так не умеет. Если использовать его, то сначала отрабатывает событие на кнопку, только потом на блок. 
			}

			lock() {
				//console.log('click_lock');
				if (this.locked) return;
				this.locked = true;
				this.el.classList.add(this.opts.lockClass);
			}

			unlock() {
				//console.log('click_unlock');
				if (!this.locked) return;
				this.locked = false;
				this.el.classList.remove(this.opts.lockClass);
			}
		}
	</script>
			<script type="text/javascript">
				var clientTable ;
				var mainTable;
				var btnsContainer;
				function refreshMaintable(){
					mainTable.reload();
				}
				$(function () {
					btnsContainer = new ButtonBlocker('#queryTableActionContainer_nSLu4u5f');

					//--- ФИЛЬТР --//

					function updateColClass() {
						if ($(window).width() <= 1440) {
							$('#myCol .col-sm-3').removeClass('col-sm-3').addClass('col-sm-4');
						} else {
							$('#myCol .col-sm-4').removeClass('col-sm-4').addClass('col-sm-3');
						}
					}

					$(window).on('resize', updateColClass);
					$(document).ready(updateColClass);

					$("#searchAppType").select2({
						placeholder: "Тип заявления",
						allowClear: true,
						minimumInputLength: 0,
						id: function (e) {
							return e.name;
						},
						ajax: {
							url: "queryModel?queryModelCode=wFuy8mPX",
							dataType: 'json',
							data: function (term, page) {
								return {
									term: term,
									maxResults: 10,
									type: 0
								};
							},
							results: function (data, page) {
								return {
									results: data.list
								};
							}
						},
						formatResult: formatCheckResult,
						formatSelection: formatCheckSelection,
					}).on("change", function (e) {
						$("#param").attr("value", e.val);
					});

					function formatCheckResult(data) {
						return '<div>' + data.name + '</div>';
					}

					function formatCheckSelection(data) {
						return data.name;
					}

					// Функция получения данных из полей формы поиска
					function formData() {
						var data = {};
						if ($("#searchName").val()) {
							data.first_name = $("#searchName").val().trim();
						}
						if ($("#searchLastName").val()) {
							data.last_name = $("#searchLastName").val().trim();
						}
						if ($("#searchMiddleName").val()) {
							data.middle_name = $("#searchMiddleName").val().trim();
						}
						if ($("#searchSnils").val()) {
							data.insurance_number = $("#searchSnils").val();
						}
						//if ($("#searchRegNum").val()) {
						//    data.application_type_id = $("#searchRegNum").val();
						//}
						if ($("#searchAppType").val()) {
							data.application_type_name = $("#searchAppType").val();
						}
						if ($("#searchStartDate").val()) {
							data.start_date = $("#searchStartDate").val();
						}
						if ($("#searchEndDate").val()) {
							data.end_date = $("#searchEndDate").val();
						}

						let jsonData = JSON.stringify(data);
						$('#param').val(jsonData);
					};

					// Функция для работы кнопок 'Enter' и 'Esc' на клавиатуре для отправки и очистке формы
					$("#searchForm").on('keydown', function(event) {
						if(event.key === 'Enter') {
							event.preventDefault();
							formData();
							mainTable.reload();
						}
					});
                
					// Функция для отправки формы по клику на кнопку "Найти"
					$("#searchBtn").click(function() {
						formData();
						mainTable.reload();
					});

					// Функция для очистки формы по клику на кнопку "Сброс"
					$("#cleanBtn").click(function() {
						$('#searchForm input').val('');
						$('#searchAppType').select2('val', '');
						mainTable.reload();
					});

					/*
                // Функция сброса и установки определенного регистра написания строки
                function firstLetterUpperCase(string) {
                    return string.charAt(0).toUpperCase() + string.slice(1).toLowerCase();
                };

                // Присвоение нужным нам полям ввода регистра написания строки
                $("#searchName, #searchLastName, #searchMiddleName").on('input', function() {
                    $(this).val(firstLetterUpperCase($(this).val()));
                });*/

					// Маски для календаря и СНИЛС
					$("#searchSnils").mask('000-000-000 00');
					$("#searchStartDate, #searchEndDate").mask('00.00.0000');
								

					//--- ПЕРВАЯ ТАБЛИЦА ---//
					mainTable = new QueryTable("Yg9Gc4Jd", {
						onRowDblClick: function (data, index) {},
						initComplete: function (queryAction) {
							//mainTable.addActionButton("selectBtn", "Выбрать", selectBtn, "btn-blue-edit", true);
							$("#individualSearch").hide();
						},
						onRowSelect: function (data, index) {
							//$('#app${param.preffix}appID${param.blockId}').val(data.id);
							//$('#individualId').val(data.id);
							if(data)
								$('#tessaAppID').val(data.id);
							$('#tessaAppRegNum').val(data.reg_number);
							$('#app${param.preffix}appNumber${param.blockId}').val(data.reg_number.replace(/.*>(.*?)<\/a>.*/, '$1'));
							$('#app${param.preffix}appealDate${param.blockId}').val(data.reg_date);
							var fio = $(data.fio).text().trim().toUpperCase();
							var snils = data.snils;

							var clientData = {
								fio: fio,
								snils: snils
							}
							$("#individualSearch").hide();
							//localStorage.setItem('clientData', JSON.stringify(clientData));
						},
						onRowDeselect: function (data, index) {
							$("#individualSearch").hide();
						},
						drawCallback: function (settings) {
							$("#individualSearch").hide();
							$('.file_link-elem').each(function() {
								var linkElem = $(this);
								$(linkElem).on('click', function(){ tessaFileView(linkElem.attr('card_link_id'), linkElem.attr('id'), linkElem.attr("href")); return false; });
							});
							/*														$('.file_link').each(function() {
																var linkElem = $(this);
																var cardElem = linkElem.next();
																var linkText = linkElem.text().trim();
																var cardText = cardElem.text().trim();
																if(linkText && cardText) {
																		var items = linkText.split(/[,;]/);
																		linkElem.empty();
																		cardElem.remove();
																		items.forEach(function(item) {
																				let count = 1;
																				var newLink = $('<a></a>')
																				  .attr('id', item.trim())
																				  .attr('class','file_link-elem')
																					.attr('target', '_blanc')
																					.attr('href','https://mqatessa.bops.local/tessa/web/IntegrationController/getFileContent/' + item.trim())
//																					.attr('href','#')
																					.text('Скан-образы')
																					.on('click', function(){ tessaFileView(cardText, item.trim()); return false; });
																				linkElem.append(newLink).append('<br>');
//																				$('#' + item.trim()).click(function(){ tessaFileView(cardText, item.trim()); return false; });
//																				$('#' + item.trim()).off('click').on('click', function(){ tessaFileView(cardText, item.trim()); return false; });
																		});
																}
														})
	*/													
							function toUpperCase(selector) {
								$(selector).each(function() {
									var text = $(this).text();
									$(this).text(text.toUpperCase());
								});
							}

							toUpperCase('.full-name-uppercase');

							/*$('.file_link-elem').click(function() {
																let fileId = $(this).attr('id');

																$.ajax({
																		url: 'https://mqatessa.bops.local/tessa/web/IntegrationController/getFileContent/' + fileId,
																		method: 'GET',
																		success: function(data) {
																				alert(JSON.stringify(data));
																		}
																})

														})*/
						}
					}, function() {
						let jsonData = $('#param').val();
						if (jsonData) {
							let data = JSON.parse(jsonData);
							return data
						}
					}, {
						showFilter: false,
						showExportToExcelButton: false,
						paginate: true
					});
					
					mainTable.addActionButton("takeWork", "Взять в работу", takeWork, "btn-primary", true);

					function takeWork() {
						var posibleAppData = mainTable.data();
						btnsContainer.unlock();
						showProcessing();
						$("#indsearchSnils").val("");
						$("#indsearchLastName").val("");
						$("#indsearchName").val("");
						$("#indsearchMiddleName").val("");

						$("#indsearchBirthDate").val("");
						$("#indsearchSertificateSeries").val("");
						$("#indsearchSertificateNumber").val("");
						$("#indsearchContractNumber").val("");

						clientTable.reload();
						clientCardContractTable.reload();
						showClientCardPDN${param.blockId}_read_only(-1);

						if (posibleAppData){
							$.ajax(
								{
									url: "queryAction/action",
									type: "POST",
									//async:false,
									data: {
										queryActionCode: "0sBP50NK",
										id: posibleAppData.id
									},
									dataType: "json",
									success: function (data) {
										if (data.result){
											if (!data.data){
												$("#individualSearch").hide();
												showErrorMessage('Не удалось заблокировать заявление!');
											}else{
												$("#queryTable_Yg9Gc4Jd tbody .active").css("color", "red");

												showMessages(data.messages);
												$("#indsearchSnils").val(posibleAppData.snils);
												$("#indsearchLastName").val(posibleAppData.last_name.toUpperCase());
												$("#indsearchName").val(posibleAppData.first_name.toUpperCase());
												$("#indsearchMiddleName").val(posibleAppData.middle_name ? posibleAppData.middle_name.toUpperCase(): '');

												$("#indsearchBirthDate").val("");
												$("#indsearchSertificateSeries").val("");
												$("#indsearchSertificateNumber").val("");
												$("#indsearchContractNumber").val("");

												$("#individualSearch").show();
												if ($('#searchAppType').val() == 'Иное') {
													$('#controlBtnClientReport').show()
														$('#cancelReportBTNcontainer').show()
														$('#SNVbtncancelappPDnButton').hide()
														
												} else {
													$('#controlBtnClientReport').hide()
													$('#cancelReportBTNcontainer').hide()
													$('#SNVbtncancelappPDnButton').show()
												}
												/*															var OPS = ["Заявление о назначении НП (ОПС)", "Заявление о назначении СПВ (ОПС)", "Заявление о РСПН (ОПС)", "Заявление наследника УЗЛ о выплате/доп.выплате СПН (ОПС)"];
															if (OPS.includes(posibleAppData.application_type_name ) ){
																$("#RegistrationBtn").show();
																$("#RejectBtn").hide();
															}else{
																$("#RegistrationBtn").hide();
																$("#RejectBtn").show();
															}*/
												$("#applicationIdBlock").val(posibleAppData.id);
												$("#applicationNumberBlock").val(posibleAppData.application_type_id);
												timer(); // запуск таймера блокировки			
											}
										}else{
											showMessages(data.messages);
										}

									},
									complete: function(){
										clientTable.reload();
										hideProcessing();			
									}
								}
							);

							clientTable.reload();
						}
					}
										
					$("#indsearchBirthDate").on( "focus", function() { this.type='date'; });
					$("#indsearchBirthDate").on( "blur", function() { 
						if (! this.value){
							this.type='text'; 
						}
					});
							
				//Лукап для типа заявления
					$("#TypeSelect").select2({
						placeholder: "Укажите тип заявления",
						allowClear: true,
						minimumInputLength: 0,
						id: function (e) {
							return e.id;
						},
						ajax: { // динамически подгружаем список
							url: "queryModel?queryModelCode=m_app_view_type",
							dataType: 'json',
							data: function (term, page) {
								return {
									term: term // Этот текст передается из <select> при поиске значения
									// ,maxResults: 10 // Можно использовать, что бы не вываливать все в список
								}; 
							},
							results: function (data, page) {
								var d = data.list.filter(d => 
																				 d.id !== 'BR' && d.id !== 'PDBR' &&
																				 d.id !== 'TD' && d.id !== 'PV' && d.id !== 'PK'
																				)

								return {
									results: d  //data.list
								};
							}
						},
						formatResult: formatGroupResult,
						formatSelection: formatGroupSelection,
						escapeMarkup: function (m) {
							return m;
						},
						initSelection: function (element, callback) { // тут мы добываем текущее значение для <SELECT>, весь список не подгружается
							var id = $(element).val(); // берем значение связи
							$.ajax("queryModel?queryModelCode=BRceubKF", {
								dataType: "json",
								data: {
									id: '' // ID в главной таблице
								}
							}).done(function (data) {
								callback(data);
							});
						}

					}).on("change", function (e) {
						$("#SelectTypeCode").attr("value", e.val); // Обновляем значение связи
					});


				function formatGroupResult(data) { // Форматирование значений списка в момент выбора
						return '<div>' + data.short_name + '</div>';
				}

				function formatGroupSelection(data) { // Форматирование исходного значения списка
						return data.short_name;
				}
							
/*								function showDoc(cardID, docID){
									$.ajax( {
										url: "queryModel?queryModelCode=docFromTessa",
										data: { CardID : cardID,
													 	FileID : docID
													},
										dataType: 'json',
										success: function (data, page) {
											let link = document.createElement('a');
											link.download = data.Name;
											let file_parts = data.Name.split('.');
											let ext = file_parts[file_parts.length - 1];
											
											let atype = {jpeg: 'image/jpeg',
																	jpg:  'image/jpeg',
																	gif:	'image/gif',
																	pdf:	'application/pdf',
																	png:	'image/png'
																 };
											let type = '';
											if (atype[ext.toLowerCase()]){
												type = atype[ext.toLowerCase()];
											}
											
											let blob = b64toBlob(data.Content, type);
											//let blob = new Blob([decodeBase64Unicode(data.Content)], {type: type});
											link.href = URL.createObjectURL(blob);
											link.dataset.downloadurl = [type, link.download, link.href].join(':');
											//openNewWindow(link.href);
											window.open(link.href, '_blank');
    									window.focus();
											//link.click();
											URL.revokeObjectURL(link.href);
											link.remove;
										}
									});									
								}
											
							function b64toBlob(b64Data, contentType = '', sliceSize = 512) {
										let byteCharacters = atob(b64Data);
										let byteArrays = [];

										for (let offset = 0; offset < byteCharacters.length; offset += sliceSize) {
												const slice = byteCharacters.slice(offset, offset + sliceSize);
												const byteNumbers = slice.split('').map(char => char.charCodeAt(0));
												const byteArray = new Uint8Array(byteNumbers);
												byteArrays.push(byteArray);
										}

										return new Blob(byteArrays, {type: contentType});
								}
							*/
							

					clientTable = new QueryTable("nSLu4u5f", {
						onRowDblClick: function (data, index) {},
						initComplete: function (queryAction) {
							clientTable.addActionButton(
								"CreateAppBtn",
								"Создать завление по клиенту",
								CreateAppBtn,
								"btn-success",
								true
							)
							clientTable.addActionButton(
								"CreateAnyAppBtn",
								"Изменить тип заявления",
								CreateAnyAppBtn,
								"btn-success",
								false
							)
							// clientTable.addActionButton("RegistrationBtn", "Продолжить регистрацию", RegistrationBtn, "btn-warning pull-right", true);
							// clientTable.addActionButton("RejectBtn", "Отклонить заявление", RejectBtn, "btn-danger pull-right", false);
							
							
							$("#queryTableActionContainer_nSLu4u5f").css("width", "100%")
							$('#queryTableActionContainer_nSLu4u5f').after($('#controlBtnClientReport'))

						},
						onRowSelect: function (data, index) {
							if (typeof IndAppListReloadTables${param.blockId} == "function"){
								IndAppListReloadTables${param.blockId}();
							}
							//var fio = $(data.fio).text().trim().toUpperCase();
							//var snils = data.snils;

							//var clientData = {
							//	fio: fio,
							//	snils: snils
							//}
							//$("#individualSearch").hide();
							//localStorage.setItem('clientData', JSON.stringify(clientData));
							clientCardContractTable.reload();
							showClientCardPDN${param.blockId}_read_only(data.id);
							if ($('#searchAppType').val() == 'Иное') {
								$('#createReport').attr('disabled', false)
							}
							
						},
						onRowDeselect: function (data, index) {
							//$("#individualSearch").hide();
							clientCardContractTable.reload();
							showClientCardPDN${param.blockId}_read_only(-1);
							$('#createReport').attr('disabled', true)
						},
						drawCallback: function (settings) {
							clientCardContractTable.reload();
							showClientCardPDN${param.blockId}_read_only(-1);													
						}
					}, function() {
						var data = {};

						$("#indsearchForm").serializeArray().map(function (x) {
							data[x.name] = x.value.trim();
						});
						return data;
					}, {
						showFilter: false,
						showExportToExcelButton: false,
						paginate: true
					},
																			);

																			 function selectBtn() {
						window.location.href = 'view?viewCode=XSs87VUH';
					}

					$("#indsearchBtn").click(function() {
						clientTable.reload();
					});

					// Функция для очистки формы по клику на кнопку "Сброс"
					$("#indcleanBtn").click(function() {
						$('#indsearchForm input').val('');
						clientTable.reload();
					});
							
							
								

					function CreateAppBtn(){
						//console.log('click');
						var clientData = clientTable.data();
						var appData = mainTable.data();
						var appType = getAppType(appData.application_type_code, $('#application_type_name_' + appData.id).text());
						if (clientData && appData){
							createApp(appData.id, clientData.id,appType);
						}
					};

					function CreateAnyAppBtn(){

						$('#SelectTypeModal').modal('show');
						btnsContainer.unlock();

					};

					$('#ApplicationSelectType').on('click', function () {
						var clientData = clientTable.data();
						var appData = mainTable.data();

						var appType = $("#SelectTypeCode").val();

						//if (clientData && appData){
						//createApp(appData.id, clientData.id,appType);
						if (appData){
							QueryAction.action('fCDo9g2d', {
								actionComplete: function(data) {
									if (data.result) {
										$('#application_type_name_' + appData.id).text(data.data);
									}
								}
							}, function() {
								return {
									appId: appData.id,
									appCode: appType
								}
							})
						}

						$('#SelectTypeModal').modal('hide');
					});				

							
					//Создано для отправки id
					$(".create-application").bind("click", function () {
						var individual_id = ((typeof clientTable == 'object' && clientTable.data())? clientTable.data().id : -1);
						var tessa_doc_id = ((typeof mainTable == 'object' && mainTable.data())? mainTable.data().id : -1); 
						var reg_date = ((typeof mainTable == 'object' && mainTable.data())? mainTable.data().reg_date : -1);
						
						var sharer_id = -1; 

						$.ajax({
							url: "queryModel.json",
							async: false,
							type: "POST",
							data: {
								queryModelCode: "get_OPS_sharer_4_NP_SPV",
								id: individual_id

							},
							dataType: "json",
							success: function (data) {
								if (data){
									sharer_id = data.id;
								}
								/*
										data.list.map(function(item){
											if (item.service_type == "OPS") {
												sharer_id = item.id;
											}
										});*/
							}
						});

						const appUrls = {
							"createSNV": 'view?viewCode=fRte1y7l&individual_id=' + individual_id + '&tessa_doc_id=' + tessa_doc_id + '&reg_date=' + reg_date
						}
						
						var appType = $(this).attr("id");
						
						if (appType == "createSNV") {
    var checkResult = null;

    $.ajax({
        url: "queryModel.json",
        async: false,
        type: "POST",
        data: {
            queryModelCode: "84fUjcvx",
            number: $('#app${param.preffix}appNumber${param.blockId}').val()
        },
        dataType: "json",
        success: function (data) {
            checkResult = data.result;
        }
    });

    if (checkResult === false) {
    showWarningMessage("Данное заявление не является заявлением на расторжение. Создание справки о НВ недоступно.");
    btnsContainer.unlock();
    return;
}
}
						
						if (appUrls[appType] != ""){
							if (appType == "createAppCNL") {
								get_count_apps(individual_id);          
							} else  {
								openNewWindow(appUrls[appType]);
							}
						}else{
							alert("Этот тип завления пока не реализован.");
						}
					})
/*
					$('#createSNV').on('click', function () {
						var individual_id = ((typeof clientTable == 'object' && clientTable.data())? clientTable.data().id : -1);
        openNewWindow('view?viewCode=fRte1y7l&individual_id=' + individual_id);
    });
					*/
					function RegistrationBtn(){

					};
					function RejectBtn(){

						var appData = mainTable.data();
						var appType = getAppType(appData.application_type_id, $('#application_type_name_' + appData.id).text());
						if (appType == "PP" || appType == "NP"){
							var queryReport = new QueryReport("dzZ0vGcY", {
								initComplete: function (queryAction) {
									console.log("Инициализация компонента завершена");
								},
								reportComplete: function (data) {

									if (data.data.id){
										$.ajax(
											{
												url: "queryAction/action",
												type: "POST",
												async:false,
												data: {
													queryActionCode: "YWFYWy8j",
													id: appData.id,
													file_id: data.data.id,
													p_code: data.p_code
												},
												dataType: "json",
												success: function (data) {
													if (data.result && data.data){

														showSuccessMessage('Карточка отклонения заявления создана');
														mainTable.reload();	
														//openNewWindow(data.data);
													}else{
														showMessages(data.messages);
													}

												}
											}
										);

									}

									console.log("Отчет построен");
								},
								reportFailed: function (request, status, error) {
									console.log("Отчет завершен с ошибкой");
								}
							}, function () {
								return {

									SNILS: $("#indsearchSnils").val(),
									First_name: $("#indsearchName").val(),
									Last_name: $("#indsearchLastName").val(),
									Middle_name: $("#indsearchMiddleName").val(),
									Middle_name: $("#indsearchMiddleName").val(),
									t_id: appData.id,
									signatory_id: 10808
								}
							},
																								{onlyCreate: true}
																							 );
							queryReport.run();
						}else{
							alert("Отклонение этого типа заявления пока в разработке.");
						}
					};

					function createApp(t_id, individual_id, appType){
						showProcessing('Создается заявление');
						$.ajax(
							{
								url: "queryAction/action",
								type: "POST",
								async:true,
								data: {
									queryActionCode: "Us9Esu5l",
									t_id: t_id,
									individual_id: individual_id,
									app_type: appType
								},
								dataType: "json",
								success: function (data) {
									hideProcessing();
									if (data.result && data.data){

										showSuccessMessage('Заявление создано');
										mainTable.reload();	
										openNewWindow(data.data);
									}else{
										btnsContainer.unlock();
										if ( data.messages[0].message.match(/Where: функция PL\/pgSQL f_create_application_from_tessa\([^\)]+\),.+RAISE/) &&
												data.messages[0].message.match(/RuntimeException: Ошибка в команде "Создать новое заявление", текст ошибки : PSQLException: ОШИБКА: (.+)/)[1]){
											showWarningMessage(data.messages[0].message.match(/RuntimeException: Ошибка в команде "Создать новое заявление", текст ошибки : PSQLException: ОШИБКА: (.+)/)[1]) ;
										}else if (data.messages[0].message.match(/Where: PL\/pgSQL function f_create_application_from_tessa\([^\)]+\).+RAISE/) &&
															data.messages[0].message.match(/RuntimeException: Ошибка в команде "Создать новое заявление", текст ошибки : PSQLException: ERROR: (.+)/)[1]){
											showWarningMessage(data.messages[0].message.match(/RuntimeException: Ошибка в команде "Создать новое заявление", текст ошибки : PSQLException: ERROR: (.+)/)[1]) ;
										}else{
											showMessages(data.messages);
										}
									}
								}
							}
						)
					}
/*							
							function createPDNBR(t_id, individual_id){
								$.ajax(
											{
												url: "queryAction/action",
												type: "POST",
												async:false,
												data: {
													queryActionCode: "RFKhSXzE",
													t_id: t_id,
													individual_id: individual_id,
												},
												dataType: "json",
												success: function (data) {
													if (data.result && data.data){
														
														showSuccessMessage('Заявление создано');
														mainTable.reload();	
														openNewWindow('view?viewCode=qJz02V3v&id=' + data.data);
													}else{
														showMessages(data.messages);
													}
													
												}
											}
										);
								
							};
							
							function createappNPSPV(t_id, individual_id, payment_type){
								$.ajax(
											{
												url: "queryAction/action",
												type: "POST",
												async:false,
												data: {
													queryActionCode: "6LjbCtMp",
													t_id: t_id,
													individual_id: individual_id,
													payment_type: payment_type
												},
												dataType: "json",
												success: function (data) {
													if (data.result && data.data){
														showSuccessMessage('Заявление создано');
														mainTable.reload();	
														openNewWindow('view?viewCode=PxdvYjrk&id=' + data.data);
													}else{
														showMessages(data.messages);
													}
													
												}
											}
										);
							};
*/							
							//Отклонение заявления
					$("#SNVbtncancelappPDnButton${param.blockId}").on('click',function(){
						let app_type;
						let type_name;
						if (mainTable.data()){
							app_type = mainTable.data().application_type_code;
							type_name = $('#application_type_name_' + mainTable.data().id).text();
						}

						let appCode = getAppType(app_type, type_name);
						rejectApplication(appCode, true);
						//mainTable.reload();						
					});
					
					$('#cancelAppAny').click(() => {
						console.log('cancelAppAny click')

						if (mainTable.data()){
							const appData = mainTable.data()
							const type_name = $('#application_type_name_' + appData.id).text()
							
							if ( type_name == "Иное" ) {
								const data = { tessa_document_id: appData.id }

								$('#otherAppRejectModal').data('data', data)

								rejectApplicationOther()
							}
						}
						
					})
					$('#createCertPPP').click(() => {
						if ( !mainTable.data() || !clientTable.data() ) return
						
						$.ajax({
							url: "queryAction/action",
							async: false,
							type: "POST",
							data: {
								queryActionCode: "sdcDHV4j",
								tessa_document_id: mainTable.data().id	
							},
							dataType: "json",
							success: function (data) {
								if ( data && data.result ){
									localStorage.setItem('tessa_document_id', mainTable.data().id)
									openNewWindow( 'view?viewCode=IxxfrCqp&id=' + clientTable.data().id )
								}
							}
						})
					})

					$('#queryTableExportToExcelButton_nSLu4u5f').closest('.btn-group.pull-right')
						.prepend($('#SNVbtncancelappPDnButton'))
						.prepend($('#cancelReportBTNcontainer'))
						.prepend($('#ReturnToDUDButton'));

					// Возврат в ДУД

					$("#ReturnToDUDButton${param.blockId}").on('click',function(){
						let doc_id;
						if (mainTable.data()){
							if (mainTable.data().id > 0 ){
								$('#ReturnToDUDModal').modal('show');
							}
						}

					});		
								
					$("#ReturnToDUDAction").on('click',function(){
						if (mainTable.data()){
							if ($("#ReturnComment").val()){
								doc_id = mainTable.data().id;
								QueryAction.action('KQvnmhG2', {
									actionComplete: function(data) {
										if (data.result) {
											$('#application_type_name_' + appData.id).text(data.data);
										}
									}
								}, function() {
									return {
										id: doc_id,
										comment: $("#ReturnComment").val()
									}
								});							
								$('#ReturnToDUDModal').modal('hide');
								mainTable.reload();
							}else{

							}

						}else{
							$('#ReturnToDUDModal').modal('hide');
						}
					});				
							
					function getAppType(code, name){
						var appType = '';
						$.ajax( {
							url: "queryModel?queryModelCode=f42ZRO4Z",
							async:false,
							data: { code : code,
										 name : name
										},
							dataType: 'json',
							success: function (data, page) {
								appType = data.code;
							}
						});
						return appType;
					};

					var createRobotApp = new QueryAction("10Mx1eu3", {
						initComplete: function (queryAction) {
							createRobotApp.enable();
						},
						actionComplete: function (data) {
							showMessages(data.messages);
						}
					});				
						
//                $("#indsearchSnils").mask('999-999-999 99', {placeholder: "___-___-___ __"});
							
//								$("#indsearchForm input").on("change", function(){clientTable.reload();});
							

					clientCardContractTable = new QueryTable("sharer_by_individual", {
						initComplete: function (queryAction) {
							//clientCardContractTable.addActionButton("unloadDirectum", "Директум", unloadDirectum, "btn-primary", true);
							//clientCardContractTable.addActionButton("unloadDirectumRX", "Директум RX", unloadDirectumRX, "btn-default", true);
							//$('#queryTableActionContainer_sharer_by_individual').append($('#printDictanceDocDropDown'));
							//$('#queryTableActionContainer_sharer_by_individual').append($('#printExtractDocDropDown'));
						},


						onRowSelect: function (data, index) {	},
						onRowDeselect: function (data, index) { },
						drawCallback: function (settings) {	}

					}, function () {
						var clientData = clientTable.data();
						var data = {};

						data.individual_id = (clientData ? clientData.id : -1);
						data.effectiveDate =  $("#effectiveDate").val();

						console.log(data.individual_id);
						console.log(clientData);

						return data;
					}, {
						showFilter: false,
						showExportToExcelButton: false,
						paginate: false
					});							

					$("#individual_section").collapse(); 
					$("#pdlPodftStatusRow").hide();
					$("#byRepresentativeRow").hide();
					$(".PDNparam").prop('readonly', true); 
					
					
				});
				
				
				
				// БЛОКИРОВКА по времени
				
					// Запуск таймера на 10 минут (10 * 60 секунд)
					function timer() {
						const tenMinutes = 10 * 60; // здесь можно поменять время таймера
						startTimer(tenMinutes);
					};
					
					function startTimer(duration) {
						let timer = duration, minutes, seconds;
						const interval = setInterval(function () {
							if (--timer < 0) {
								clearInterval(interval);
								timerModal();
							}
						}, 1000);
					};
					
					// Модальное окно
					function timerModal(){
						
						// 1 получаем элементы: Текст внутри модального окна и Номер заявления 
						const blockHeading = document.getElementById('blockHeading');
						const applicationNumberBlock = document.getElementById('applicationNumberBlock').value;
						
						// 2 Берем текущий текст, делаем замену и записываем обратно
						blockHeading.innerHTML = blockHeading.innerHTML.replace('---', applicationNumberBlock);
						
						// Отобразить модальное окно 
						$("#timerModalWindow").modal('show');
						
						// Кнопка "Продолжить работу"
						timerModalWindowActionTrue.onclick = function(){
							toContinueWork();
						};
						// Кнопка "Завершить и выйти"
						timerModalWindowActionFalse.onclick = function(){
							finishEndExit();
						};
					};
					
					// Функция "Продолжить работу"
					function toContinueWork(){
						
						var applicationIdBlock = $("#applicationIdBlock").val();
						
						$.ajax({
							url: "queryAction/action",
							type: "POST",
							data: {
								queryActionCode: "pMj7L8x7",
								continue: 1,
								id: applicationIdBlock
							},
							dataType: "json",
							success: function (data) {
								$("#timerModalWindow").modal('hide');
								timer();
							}
						});
						
					};
					
					// Функция "Завершить и выйти"
					function finishEndExit(){
						
						var applicationIdBlock = $("#applicationIdBlock").val();
						
						$.ajax({
							url: "queryAction/action",
							type: "POST",
							data: {
								queryActionCode: "pMj7L8x7",
								continue: 0,
								id: applicationIdBlock
							},
							dataType: "json",
							success: function (data) {
								$("#timerModalWindow").modal('hide');
								$("#individualSearch").hide();
								$("#cleanBtn").click();
							}
						});
					};
					
				// END БЛОКИРОВКА по времени

        </script>
				<script type="text/javascript" src="/ourpension/js/${version}/uploadFile.js"></script>
        <jsp:include page="header.jsp"/>
        <jsp:include page="navbar.jsp"/>

        <div id="SelectTypeModal" class="modal fade" tabindex="-1" role="dialog" data-backdrop="static"
            aria-labelledby="SelectTypeModal" aria-hidden="true">
            <div class="modal-dialog">
                <div class="modal-content">
                    <div class="modal-header">
                        <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span>
                            <span class="sr-only">
                                <s:message code="dialog.close" />
                            </span>
                        </button>
                        <h4 class="modal-title">Выбор типа заявления</h4>
                    </div>
                    <div class="modal-body">
                        <form id="SelectTypeModalform" class="form-vertical" role="form">
													<input type="hidden" name="SelectTypeCode" id="SelectTypeCode">
															<div class="form-group">
																<label class="control-label" for="TypeSelect">Тип заявления</label>
																<div id="TypeSelect" class="form-control"></div>
															</div>
                        </form>
                    </div>
                    <div class="modal-footer">
                        <button id="ApplicationSelectType" class="btn btn-primary" type="button" >Выбрать</button>
                        <button class="btn btn-default" type="button" data-dismiss="modal">
                            <s:message code="button.cancel" />
                        </button>
                    </div>
                </div>
            </div>
        </div>				

        <div id="ReturnToDUDModal" class="modal fade" tabindex="-1" role="dialog" data-backdrop="static"
            aria-labelledby="ReturnToDUDModal" aria-hidden="true">
            <div class="modal-dialog">
                <div class="modal-content">
                    <div class="modal-header">
                        <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span>
                            <span class="sr-only">
                                <s:message code="dialog.close" />
                            </span>
                        </button>
                        <h4 class="modal-title">Возврат документа в ДУД</h4>
                    </div>
                    <div class="modal-body">
                        <form id="ReturnToDUDModalform" class="form-vertical" role="form">
													<div class="form-group">
														<label class="control-label" for="ReturnComment">Укажите причину возврата</label>
														<textarea id="ReturnComment" class="form-control" row="5"> </textarea>
													</div>
                        </form>
                    </div>
                    <div class="modal-footer">
                        <button id="ReturnToDUDAction" class="btn btn-primary" type="button" >Вернуть в ДУД</button>
                        <button class="btn btn-default" type="button" data-dismiss="modal">
                            <s:message code="button.cancel" />
                        </button>
                    </div>
                </div>
            </div>
        </div>	
		<!-- Modal window block -->
			<div id="timerModalWindow" class="modal fade" tabindex="-1"
			role="dialog" data-backdrop="static" aria-labelledby="timerModalWindow" aria-hidden="true">
				<div class="modal-dialog">
					<div class="modal-content">
						<input type="hidden" name="applicationIdBlock" id="applicationIdBlock">
						<input type="hidden" name="applicationNumberBlock" id="applicationNumberBlock">
						<div class="modal-header">
							<h4 class="modal-title" style="text-align: center;">ВНИМАНИЕ!</h4>
						</div>
						<div class="modal-body">
							<h5 class="modal-title" id="blockHeading" style="text-align: center;"><strong>Время работы с заявлением --- истекло, желаете продолжить работу?</strong></h5>
						</div>
						<div class="modal-footer">
							<button id="timerModalWindowActionTrue" class="btn btn-success" type="button">Продолжить работу</button>
							<button id="timerModalWindowActionFalse" class="btn btn-danger" type="button">Завершить и выйти</button>
						</div>
					</div>
				</div>
			</div>	
		<!-- END Modal window block -->	

       	<%--- ТАБЛИЦЫ И ИНТЕРФЕЙС ---%>
        <div class="container" id="mainContainer">
            <div class="page-header">
                <h1>${view.name}</h1>
            </div>
            <div class="container-fluid">
                <div class="row row-main">
                    <jsp:include page="sidebar.jsp"/>
                    <div class="col-sm-10">
                        <tags:breadcrumbs path='https://portal.futurenpf.ru/knowledgebase/category/30260/'/>
											<div class="row">
												<div class="col-sm-12">
													<form class="form" id="searchForm"> 

														<input type="hidden" id="param" name="param">
														<input type="hidden" id="tessaAppID" name="tessaAppID">
														<input type="hidden" id="tessaAppRegNum" name="tessaAppRegNum">
														<input type="hidden" id="app${param.preffix}appealDate${param.blockId}" name="app${param.preffix}appealDate${param.blockId}">
														<input type="hidden" id="individualId" name="individualId"> 
														<input type="hidden" id="app${param.preffix}appNumber${param.blockId}" name="app${param.preffix}appNumber${param.blockId}">
														<div id="myCol">
															<!--<div class="col-sm-3">
																		<label class="control-label" for="searchLastName">Фамилия</label>
																		<input type="text" id="searchLastName" class="form-control" name="searchLastName">
																		</div>
																		<div class="col-sm-3">
																		<label class="control-label" for="searchName">Имя</label>
																		<input type="text" id="searchName" class="form-control" name="searchName">
																		</div>
																		<div class="col-sm-3">
																		<label class="control-label" for="searchMiddleName">Отчество</label>
																		<input type="text" 
																		id="searchMiddleName"
																		class="form-control"
																		name="searchMiddleName">
																		</div>
																		<div class="col-sm-3">
																		<label class="control-label" for="searchRegNum">Регистрационный номер</label>
																		<input type="text" id="searchRegNum" class="form-control" name="searchRegNum">
																		</div>
																		<div class="col-sm-3">
																		<label class="control-label" for="searchSnils">СНИЛС</label>
																		<input type="text" id="searchSnils" class="form-control" name="searchSnils">
																		</div>-->
															<div class="form-group">
															<div class="row">
																<div class="col-sm-3">
																		<label class="control-label" for="searchAppType">Тип заявления</label>
																		<div type="text" id="searchAppType" class="form-control" name="searchAppType">
																			<!--<option selected value="">Не выбрано</option>
																					<option>Иное</option>
																					<option>Заявление НП</option>
																					<option>Заявление ПДн</option>-->
																		</div>
																	</div>
																	<div class="col-sm-3">
																		<label class="control-label" for="searchStartDate">Дата поступления c</label>
																		<input type="text" 
																					 id="searchStartDate"
																					 class="form-control date-picker-on"
																					 name="searchStartDate"
																					 value="<fmt:formatDate value='${currentDate}' pattern='dd.MM.yyyy' />">
																	</div>
																</div>
															</div>

															<div class="form-group">
																<div class="row">
																	<div class="col-sm-3">
																		<label class="control-label" for="searchEndDate">Дата поступления по</label>
																		<input type="text"
																					 id="searchEndDate"
																					 class="form-control date-picker-on"
																					 name="searchEndDate"
																					 value="<fmt:formatDate value='${currentDate}' pattern='dd.MM.yyyy' />">
																	</div>
																</div>
															</div>
															<div class="form-group">
																<div class="row">
																	<div class="col-sm-12">
																		<div class="btn-group">
																			<button id="searchBtn" class="btn btn-success" type="button">
																				<span class="glyphicon glyphicon-search" aria-hidden="true"></span>  
																				<span class="btn-text">Найти</span>
																			</button>
																			<button id="cleanBtn" class="btn btn-warning" type="button">
																				<span class="glyphicon glyphicon-trash" aria-hidden="true"></span>  
																				<span class="btn-text">Сбросить</span>
																			</button>
																		</div>	
																	</div>
																</div>
															</div>
														</div>
													</form>
												</div>
											</div>
											
											<br>
											
											<div class="row">
												<div class="col-sm-12">
													<jsp:include page="queryTable.jsp">
														<jsp:param name="queryTableCode" value="Yg9Gc4Jd"/>
													</jsp:include>
												</div>
											</div>

												<div class="row">
													<%--div class="col-sm-10"></div--%>
													<%--div class="col-sm-12 ">
														<jsp:include page="queryAction.jsp">
																<jsp:param name="queryActionCode" value="10Mx1eu3"/>
																<jsp:param name="queryActionClass" value="btn-warning pull-right"/>
														</jsp:include>
													</div--%>
												</div>
											
												<hr>
											
												<div id="individualSearch" class="row">
													<div class="col-sm-12">
														<form class="form" id="indsearchForm">
															<div class="row" >
                                        <div class="col-sm-3">
                                            <%--label class="control-label" for="searchSnils">СНИЛС</label--%>
                                            <input type="text" id="indsearchSnils" class="form-control" name="indsearchSnils" data-mask="999-999-999 99" placeholder="СНИЛС">
                                        </div>
                                        <div class="col-sm-3">
                                            <%--label class="control-label" for="searchLastName">Фамилия</label--%>
                                            <input type="text" id="indsearchLastName" class="text-uppercase text-only-ru form-control" name="indsearchLastName" placeholder="Фамилия">
                                        </div>
                                        <div class="col-sm-3">
                                            <%--label class="control-label" for="searchName">Имя</label--%>
                                            <input type="text" id="indsearchName" class="text-uppercase text-only-ru form-control" name="indsearchName" placeholder="Имя">
                                        </div>
                                        <div class="col-sm-3">
                                            <%--label class="control-label" for="searchMiddleName">Отчество</label--%>
                                            <input type="text" id="indsearchMiddleName" class="text-uppercase text-only-ru form-control" name="indsearchMiddleName" placeholder="Отчество">
                                        </div>
															</div>
															<div class="row">
		                                    <div class="col-sm-3">
                                            
                                            <input type="text" id="indsearchBirthDate" class="form-control" name="indsearchBirthDate" placeholder="Дата рождения">
                                        </div>
                                        <div class="col-sm-3">
                                            
                                            <input type="text" id="indsearchSertificateSeries" class="form-control" name="indsearchSertificateSeries" placeholder="Серия ДУЛ">
                                        </div>
                                        <div class="col-sm-3">
                                            
                                            <input type="text" id="indsearchSertificateNumber" class="form-control" name="indsearchSertificateNumber" placeholder="Номер ДУЛ">
                                        </div>
                                        <div class="col-sm-3">
                                            
                                            <input type="text" id="indsearchContractNumber" class="form-control" name="indsearchContractNumber" placeholder="Номер договора">
                                        </div>
															</div>
															
															<div class="form-group">
																<div class="row">
																	<div class="col-sm-12">
																		<div class="btn-group">
																			<button id="indsearchBtn" class="btn btn-success" type="button">
																				<span class="glyphicon glyphicon-search" aria-hidden="true"></span>  
																				<span class="btn-text">Найти</span>
																			</button>
																			<button id="indcleanBtn" class="btn btn-warning" type="button">
																				<span class="glyphicon glyphicon-trash" aria-hidden="true"></span>  
																				<span class="btn-text">Сбросить</span>
																			</button>
																		</div>	
																	</div>	
																</div>	
															</div>	
														</form>
														
														<br>
														
														<div class="row">
															<div class="col-sm-12">
																<jsp:include page="queryTable.jsp">
																	<jsp:param name="queryTableCode" value="nSLu4u5f"/>
																</jsp:include>
															</div>
														</div>
														
														<div class='hidden'>
															<div id="controlBtnClientReport"  class="btn-group navbar-btn">
																<div class="btn-group" role="group">
																	<button id="createReport"
																					name="createReport"
																					class="btn btn-info dropdown-toggle"
																					type="button"
																					data-toggle="dropdown"
																					disabled>
																		Создать справку по клиенту
																		<span class="caret"></span>
																	</button>
																	<ul class="dropdown-menu">
																		<li>
																			<a id="createCertPPP" style="cursor: pointer">
																				Документы, подтверждающие срок пенсионных оснований
																			</a>
																		</li>
																		<li>
																			<a id="createSNV" class="create-application" style="cursor: pointer">
																				Справка о НВ
																			</a>
																		</li>
																	</ul>
																</div>
																<div id="cancelReportBTNcontainer"class="btn-group" role="group">
																	<button id="cancelReportBTN"
																					name="cancelReportBTN"
																					class="btn btn-danger dropdown-toggle"
																					type="button"
																					data-toggle="dropdown">
																		Отклонить
																		<span class="caret"></span>
																	</button>
																	<ul class="dropdown-menu">
																		<li>
																			<a id="cancelAppAny" style="cursor: pointer">
																				Отклонить справку
																			</a>
																		</li>
																	</ul>
																</div>
															</div>
														</div>
														<div class="row">
															<div class="col-sm-11 text-right"> 
																<button id="ReturnToDUDButton${param.blockId}" class="btn btn-danger">
																	Вернуть в ДУД
																</button>
															</div>
															<div class="col-sm-1 text-right"> 
																<button id="SNVbtncancelappPDnButton${param.blockId}" class="btn btn-danger">
																	Отклонить заявление
																</button>
															</div>
														</div>

														<!--div class="panel panel-default">
															<div class="panel-heading"
																		role="tab"
																		id="persdata_section_heading">
																	<h4 class="panel-title">
																			<a class="collapsed"
																					data-toggle="collapse"
																					href="#persdata_section"
																					aria-expanded="false"
																					aria-controls="persdata_section">
																					Личные данные
																			</a>
																	</h4>
															</div>	
															<div id="persdata_section"
																	class="panel-collapse collapse"
																	role="tabpanel"
																	aria-labelledby="persdata_section_heading">
                                <div class="panel-body"-->
														<hr>
														<jsp:include page="personal_pdn_block_tst_4br.jsp">
															<jsp:param name="id" value="-1"/>
															<jsp:param name="suffix" value="${param.blockId}_read_only"/>
															<jsp:param name="queryModelCode" value="2IEqKs37"/>
														</jsp:include>
																<!--/div>
															</div>
														</div-->

														<div class="panel panel-default">
															<div class="panel-heading" role="tab" id="contract_section_heading">
																<h4 class="panel-title">
																	<a class="collapsed"
																		 data-toggle="collapse"
																		 href="#contract_section"
																		 aria-expanded="false"
																		 aria-controls="contract_section">
																		Договоры и счета
																	</a>
																</h4>
															</div>													
															<div id="contract_section"
																	 class="panel-collapse collapse"
																	 role="tabpanel"
																	 aria-labelledby="contract_section_heading">
																<div class="panel-body">																
																	<div class="row">
																		<div class="col-sm-12">
																			<jsp:include page="queryTable.jsp">
																				<jsp:param name="queryTableCode" value="sharer_by_individual"/>
																				<jsp:param name="queryTableStyle" value="white-space:nowrap;"/>
																			</jsp:include>
																		</div>
																	</div>																	
																</div>
															</div>
														</div>

														<jsp:include page="IndAppList.jsp">
															<jsp:param name="blockId" value="${param_blockId}"/>
														</jsp:include>

													</div>
											</div>
									</div>
							</div>
					</div>
					</div>
					<div id='other_app_reject_modal' class="row">
						<jsp:include page="wWHQeOmW.jsp"/>
					</div>
        <%------%>
					<jsp:include page="reject_block.jsp">
						<jsp:param name="blockId" value="${param_blockId}"/>
						<jsp:param name="preffix" value="${param.preffix}"/>
						<jsp:param name="create_tessa" value="YWFYWy8j"/>
						<jsp:param name="functionShowAppCard" value="refreshMaintable"/>
						<jsp:param name="noticeKind" value="DENIAL"/>
					</jsp:include>
					</div>
					<jsp:include page="footer.jsp"/>
					</body>
			</html>