release 1.1

This commit is contained in:
2026-02-22 09:40:08 +03:00
parent ea28427c3d
commit e269425fe0
10 changed files with 1173 additions and 410 deletions
+30 -15
View File
@@ -40,6 +40,8 @@ window.addEventListener('message', (event) => {
async function loadPageData() {
storageData = await chrome.storage.local.get(dataType);
const userData = await chrome.storage.local.get(userDataType);
storageData.userData = userData[userDataType];
if (!storageData || !storageData.metaData || Object.keys(storageData.metaData).length === 0) {
console.log(`[EXT][content] no data for ${dataType}, injecting...`);
@@ -101,8 +103,8 @@ window.addEventListener('message', async (event) => {
}
// Подготавливаем данные для отправки
const userData = storageData.metaData.userData;
const patientId = storageData.metaData.patients?.[0]?.idPatientMis;
const userData = storageData.userData;
const patientId = storageData.metaData.patient.idPatientMis;
if (!userData || !patientId) {
window.postMessage({
@@ -156,10 +158,6 @@ window.addEventListener('message', async (event) => {
isProcessing = true;
console.log('[EXT][content] Forwarding to background:', {
docNumbers: event.data.payload.docNumbers
});
// Немедленный ответ о принятии задачи
window.postMessage({
source: 'medods-extension',
@@ -178,8 +176,6 @@ window.addEventListener('message', async (event) => {
event.data.payload.docNumbers.includes(parseInt(doc.number, 10))
);
console.log(`📄 [Content] Найдено документов для отправки: ${filteredDocs.length}`);
if (filteredDocs.length === 0) {
window.postMessage({
source: 'medods-extension',
@@ -198,8 +194,10 @@ window.addEventListener('message', async (event) => {
// Собираем все данные для отправки
const sendData = {
practitioner: storageData.metaData.practitioner,
patients: storageData.metaData.patients,
patient: storageData.metaData.patient,
recipients: event.data.payload.recipients,
docs: filteredDocs,
deliveryType: event.data.payload.deliveryType
};
// Асинхронная обработка в background
@@ -243,7 +241,7 @@ window.addEventListener('message', async (event) => {
}
// Получаем idPatientMis из метаданных
const idPatientMis = storageData.metaData.patients?.[0]?.idPatientMis;
const idPatientMis = storageData.metaData.patient.idPatientMis;
if (!idPatientMis) {
window.postMessage({
@@ -289,7 +287,7 @@ window.addEventListener('message', async (event) => {
// ОБРАБОТЧИК ПРОВЕРКИ ПРАВ НА ОТЗЫВ
if (event.data.type === 'checkRevokePermission') {
const hasPermission = String(storageData.metaData?.userData?.id) === String(event.data.payload.userIdLpu);
const hasPermission = String(storageData.userData?.id) === String(event.data.payload.userIdLpu);
window.postMessage({
source: 'medods-extension',
@@ -302,8 +300,6 @@ window.addEventListener('message', async (event) => {
// ОБРАБОТЧИК ОТЗЫВА ДОКУМЕНТОВ
if (event.data.type === 'revokeDocuments') {
console.log('[EXT][content] Запрос на отзыв документов:', event.data.payload);
chrome.runtime.sendMessage({
action: 'revokeDocuments',
data: event.data.payload
@@ -318,8 +314,6 @@ window.addEventListener('message', async (event) => {
// ОБРАБОТЧИК ПОВТОРНОЙ ОТПРАВКИ ДОКУМЕНТОВ
if (event.data.type === 'resendDocuments') {
console.log('[EXT][content] Запрос на повторную отправку документов:', event.data.payload);
chrome.runtime.sendMessage({
action: 'resendDocuments',
data: event.data.payload
@@ -332,6 +326,27 @@ window.addEventListener('message', async (event) => {
});
}
// ОБРАБОТЧИК ПОИСКА ПОЛУЧАТЕЛЕЙ ПО ТЕЛЕФОНУ
if (event.data.type === 'searchRecipients') {
const data = {
...event.data.payload,
idPatientMis: storageData.metaData.patient.idPatientMis
};
// Отправляем запрос в background
chrome.runtime.sendMessage({
action: 'searchRecipients',
data: data
}, (response) => {
// Пересылаем результат обратно в singing.js
window.postMessage({
source: 'medods-extension',
type: 'searchRecipientsResponse',
payload: response
}, '*');
});
}
});
// Основной цикл