feat: 152-FZ compliant contact collection with RKN exception logic

This commit is contained in:
WASRUSGEN 2026-05-30 13:23:40 +03:00
parent 65bce5a642
commit 908eb410ca

View File

@ -8200,8 +8200,10 @@ function _showReminderPicker(doc, contractType, intent) {
'value="' + savedContact + '" style="font-size:12px;margin-bottom:6px">' + 'value="' + savedContact + '" style="font-size:12px;margin-bottom:6px">' +
'<label style="display:flex;align-items:flex-start;gap:6px;font-size:11px;color:var(--mut);cursor:pointer">' + '<label style="display:flex;align-items:flex-start;gap:6px;font-size:11px;color:var(--mut);cursor:pointer">' +
'<input type="checkbox" id="reminder-consent" style="margin-top:2px;width:13px;height:13px" checked>' + '<input type="checkbox" id="reminder-consent" style="margin-top:2px;width:13px;height:13px" checked>' +
'Согласен на обработку персональных данных в соответствии с ' + '<span>Согласен на обработку контактных данных <b>исключительно для направления напоминаний</b> ' +
'<a href="privacy.html" target="_blank" style="color:var(--bg)">Политикой конфиденциальности</a>' + 'по данному делу. Без использования в маркетинге. ' +
'<a href="privacy.html" target="_blank" style="color:var(--bg)">Политика конфиденциальности</a>' +
' · <a href="https://reestr.rkn.gov.ru/" target="_blank" style="color:var(--bg)">Реестр операторов РКН</a></span>' +
'</label>' + '</label>' +
'</div>' + '</div>' +
'<div style="display:flex;flex-direction:column;gap:6px">' + '<div style="display:flex;flex-direction:column;gap:6px">' +
@ -8256,15 +8258,17 @@ function _setReminder(docId, docLabel, contractType, remindAt, intent) {
if (contactVal && hasConsent) { if (contactVal && hasConsent) {
var ctx = _buildElenaContext(); var ctx = _buildElenaContext();
fetch(API_BASE + '/api/contact/remind', { fetch(API_BASE + '/api/contact', {
method: 'POST', method: 'POST',
headers: {'Content-Type':'application/json'}, headers: {'Content-Type':'application/json'},
body: JSON.stringify({ body: JSON.stringify({
phone_or_telegram: contactVal, phone: contactVal.startsWith('@') || contactVal.includes('t.me') ? '' : contactVal,
doc_label: docLabel, telegram: contactVal.startsWith('@') || contactVal.includes('t.me') ? contactVal : '',
remind_at: remindAt, name: ctx.client_name || '',
name: ctx.client_name || '', case_context: 'Напоминание: ' + docLabel + ' до ' + remindAt,
consent: true consent: true,
purpose: ['reminder'], // ← ст.22 ч.2 п.1 152-ФЗ: только напоминания = уведомление РКН не нужно
source: 'reminder_picker'
}) })
}).then(function(r){ return r.json(); }).then(function(d){ }).then(function(r){ return r.json(); }).then(function(d){
if (d.saved) { if (d.saved) {