-- https://www.phpmyadmin.net/
--
-- Tempo de geração: 26/10/2025 às 00:16
-- Versão do servidor: 9.1.0
-- Versão do PHP: 8.3.14

START TRANSACTION;



--
-- Banco de dados: `avaliacao_link`
--

-- --------------------------------------------------------

--
-- Estrutura para tabela `questionnaires`
--

CREATE TABLE `questionnaires` (
  `id` int NOT NULL,
  `title` varchar(255) NOT NULL,
  `description` text,
  `created_at` datetime NOT NULL,
  `active` tinyint(1) DEFAULT '1'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Despejando dados para a tabela `questionnaires`
--

INSERT INTO `questionnaires` (`id`, `title`, `description`, `created_at`, `active`) VALUES
(2, 'Pesquisa Link Dedicado - Telemedicina', 'Esta pesquisa avalia a qualidade do link dedicado utilizado para telemedicina em sua unidade. As respostas variam de 0 a 5, onde 0 significa \"muito insatisfeito\" e 5 significa \"muito satisfeito\". Após responder, a unidade não poderá enviar nova resposta.', '2025-10-25 02:44:48', 1);

-- --------------------------------------------------------

--
-- Estrutura para tabela `questionnaire_units`
--

CREATE TABLE `questionnaire_units` (
  `id` int NOT NULL,
  `questionnaire_id` int NOT NULL,
  `unit_id` int NOT NULL,
  `start_date` datetime NOT NULL,
  `end_date` datetime NOT NULL,
  `responded` tinyint(1) DEFAULT '0'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Despejando dados para a tabela `questionnaire_units`
--

INSERT INTO `questionnaire_units` (`id`, `questionnaire_id`, `unit_id`, `start_date`, `end_date`, `responded`) VALUES
(1, 2, 3, '2025-10-25 03:22:00', '2025-10-27 03:22:00', 1),
(2, 2, 1, '2025-10-25 00:00:00', '2025-10-31 23:59:00', 1),
(3, 2, 2, '2025-10-25 00:00:00', '2025-10-31 23:59:00', 1),
(4, 2, 3, '2025-10-25 00:00:00', '2025-10-31 23:59:00', 0),
(5, 2, 1, '2025-10-25 00:00:00', '2025-10-27 23:59:00', 0),
(6, 2, 2, '2025-10-25 00:00:00', '2025-10-27 23:59:00', 0),
(7, 2, 5, '2025-10-25 00:00:00', '2025-10-27 23:59:00', 1),
(8, 2, 4, '2025-10-25 00:00:00', '2025-10-27 23:59:00', 1),
(9, 2, 3, '2025-10-25 00:00:00', '2025-10-27 23:59:00', 0);

-- --------------------------------------------------------

--
-- Estrutura para tabela `questions`
--

CREATE TABLE `questions` (
  `id` int NOT NULL,
  `section_id` int NOT NULL,
  `text` varchar(500) COLLATE utf8mb4_unicode_ci NOT NULL,
  `display_order` int NOT NULL,
  `question_type` enum('scale5','multiple_choice','text_short','text_long','nps','audit','result') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'scale5'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Despejando dados para a tabela `questions`
--

INSERT INTO `questions` (`id`, `section_id`, `text`, `display_order`, `question_type`) VALUES
(10, 4, 'A internet funciona bem durante os atendimentos, sem cair ou travar.', 1, 'scale5'),
(16, 4, 'A imagem e o som das chamadas são bons, permitindo que todos se entendam com facilidade.', 2, 'scale5'),
(19, 4, 'A conexão de internet é suficiente para atender todos os pacientes que usam o serviço ao mesmo tempo.', 3, 'scale5'),
(21, 5, 'A qualidade da internet ajuda os profissionais a fazer os atendimentos de forma tranquila.', 1, 'scale5'),
(22, 5, 'A boa conexão deixa o atendimento mais rápido e melhora o contato com os pacientes.', 2, 'scale5'),
(23, 5, 'De modo geral, a internet dedicada tem funcionado bem e atende o que a unidade precisa para o dia a dia.', 3, 'scale5'),
(42, 10, 'Com base na nota que você deu, conte brevemente o motivo da sua avaliação. Você pode dizer o que funcionou bem, o que pode melhorar ou dar algum exemplo do seu dia a dia.', 1, 'text_long');

-- --------------------------------------------------------

--
-- Estrutura para tabela `question_options`
--

CREATE TABLE `question_options` (
  `id` int NOT NULL,
  `question_id` int NOT NULL,
  `option_text` varchar(255) NOT NULL,
  `display_order` int NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

-- --------------------------------------------------------

--
-- Estrutura para tabela `responses`
--

CREATE TABLE `responses` (
  `id` int NOT NULL,
  `survey_id` int NOT NULL,
  `question_id` int NOT NULL,
  `score` int NOT NULL,
  `answer_int` int DEFAULT NULL,
  `option_id` int DEFAULT NULL,
  `answer_text` text COLLATE utf8mb4_unicode_ci,
  `comment` text COLLATE utf8mb4_unicode_ci
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Despejando dados para a tabela `responses`
--

INSERT INTO `responses` (`id`, `survey_id`, `question_id`, `score`, `answer_int`, `option_id`, `answer_text`, `comment`) VALUES
(1, 1, 10, 5, 5, NULL, NULL, NULL),
(2, 1, 16, 4, 4, NULL, NULL, NULL),
(3, 1, 19, 4, 4, NULL, NULL, NULL),
(4, 1, 21, 5, 5, NULL, NULL, NULL),
(5, 1, 22, 5, 5, NULL, NULL, NULL),
(6, 1, 23, 4, 4, NULL, NULL, NULL),
(7, 1, 42, 0, NULL, NULL, 'teste', NULL),
(8, 2, 10, 3, 3, NULL, NULL, NULL),
(9, 2, 16, 3, 3, NULL, NULL, NULL),
(10, 2, 19, 3, 3, NULL, NULL, NULL),
(11, 2, 21, 3, 3, NULL, NULL, NULL),
(12, 2, 22, 3, 3, NULL, NULL, NULL),
(13, 2, 23, 3, 3, NULL, NULL, NULL),
(14, 2, 42, 0, NULL, NULL, 'oioioi', NULL),
(15, 3, 10, 5, 5, NULL, NULL, NULL),
(16, 3, 16, 3, 3, NULL, NULL, NULL),
(17, 3, 19, 3, 3, NULL, NULL, NULL),
(18, 3, 21, 3, 3, NULL, NULL, NULL),
(19, 3, 22, 2, 2, NULL, NULL, NULL),
(20, 3, 23, 2, 2, NULL, NULL, NULL),
(21, 3, 42, 0, NULL, NULL, 'teste teste', NULL),
(22, 4, 10, 1, 1, NULL, NULL, NULL),
(23, 4, 16, 2, 2, NULL, NULL, NULL),
(24, 4, 19, 2, 2, NULL, NULL, NULL),
(25, 4, 21, 2, 2, NULL, NULL, NULL),
(26, 4, 22, 3, 3, NULL, NULL, NULL),
(27, 4, 23, 2, 2, NULL, NULL, NULL),
(28, 4, 42, 0, NULL, NULL, 'teste teste', NULL),
(29, 5, 10, 4, 4, NULL, NULL, NULL),
(30, 5, 16, 1, 1, NULL, NULL, NULL),
(31, 5, 19, 0, 0, NULL, NULL, NULL),
(32, 5, 21, 5, 5, NULL, NULL, NULL),
(33, 5, 22, 1, 1, NULL, NULL, NULL),
(34, 5, 23, 3, 3, NULL, NULL, NULL),
(35, 5, 42, 0, NULL, NULL, 'teste teste teste', NULL);

-- --------------------------------------------------------

--
-- Estrutura para tabela `sections`
--

CREATE TABLE `sections` (
  `id` int NOT NULL,
  `title` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `objective` text COLLATE utf8mb4_unicode_ci,
  `is_final` tinyint(1) NOT NULL DEFAULT '0',
  `display_order` int NOT NULL,
  `questionnaire_id` int DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Despejando dados para a tabela `sections`
--

INSERT INTO `sections` (`id`, `title`, `objective`, `is_final`, `display_order`, `questionnaire_id`) VALUES
(4, 'Conexão e Qualidade da Internet', 'Objetivo: Avaliar se a internet usada nas consultas funciona bem e permite comunicação clara.', 0, 1, 2),
(5, 'Satisfação e Facilidade no Dia a Dia', 'Objetivo: Avalia como o uso da internet dedicada ajuda o trabalho e a experiência nas consultas.', 0, 2, 2),
(10, 'Comentários Finais', '', 1, 3, 2);

-- --------------------------------------------------------

--
-- Estrutura para tabela `surveys`
--

CREATE TABLE `surveys` (
  `id` int NOT NULL,
  `unit_id` int NOT NULL,
  `submitted_at` datetime NOT NULL,
  `questionnaire_id` int DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Despejando dados para a tabela `surveys`
--

INSERT INTO `surveys` (`id`, `unit_id`, `submitted_at`, `questionnaire_id`) VALUES
(1, 3, '2025-10-25 04:26:47', 2),
(2, 1, '2025-10-25 05:23:22', 2),
(3, 2, '2025-10-25 05:46:08', 2),
(4, 4, '2025-10-25 06:54:00', 2),
(5, 5, '2025-10-25 06:54:24', 2);

-- --------------------------------------------------------

--
-- Estrutura para tabela `units`
--

CREATE TABLE `units` (
  `id` int NOT NULL,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `email` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `responded` tinyint(1) DEFAULT '0',
  `created_at` datetime NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Despejando dados para a tabela `units`
--

INSERT INTO `units` (`id`, `name`, `email`, `responded`, `created_at`) VALUES
(1, 'Unidade Centro', 'centro@unidade.com', 0, '2025-10-25 01:53:54'),
(2, 'Unidade Zona Sul', 'zonalink@unidade.com', 0, '2025-10-25 01:53:54'),
(3, 'UPA Pirituba', 'upapirituba@teste.com.br', 0, '2025-10-25 02:10:09'),
(4, 'UPA Lapa', 'upalapa@teste.com.br', 0, '2025-10-25 05:36:01'),
(5, 'UPA Jaraguá', 'upajaragua@teste.com.br', 0, '2025-10-25 06:30:15');

--
-- Índices para tabelas despejadas
--

--
-- Índices de tabela `questionnaires`
--
ALTER TABLE `questionnaires`
  ADD PRIMARY KEY (`id`);

--
-- Índices de tabela `questionnaire_units`
--
ALTER TABLE `questionnaire_units`
  ADD PRIMARY KEY (`id`),
  ADD KEY `fk_qu_questionnaire` (`questionnaire_id`),
  ADD KEY `fk_qu_unit` (`unit_id`);

--
-- Índices de tabela `questions`
--
ALTER TABLE `questions`
  ADD PRIMARY KEY (`id`),
  ADD KEY `fk_questions_section` (`section_id`);

--
-- Índices de tabela `question_options`
--
ALTER TABLE `question_options`
  ADD PRIMARY KEY (`id`),
  ADD KEY `fk_options_question` (`question_id`);

--
-- Índices de tabela `responses`
--
ALTER TABLE `responses`
  ADD PRIMARY KEY (`id`),
  ADD KEY `fk_responses_survey` (`survey_id`),
  ADD KEY `fk_responses_question` (`question_id`),
  ADD KEY `fk_responses_option` (`option_id`);

--
-- Índices de tabela `sections`
--
ALTER TABLE `sections`
  ADD PRIMARY KEY (`id`),
  ADD KEY `fk_sections_questionnaire` (`questionnaire_id`);

--
-- Índices de tabela `surveys`
--
ALTER TABLE `surveys`
  ADD PRIMARY KEY (`id`),
  ADD KEY `fk_surveys_unit` (`unit_id`),
  ADD KEY `fk_surveys_questionnaire` (`questionnaire_id`);

--
-- Índices de tabela `units`
--
ALTER TABLE `units`
  ADD PRIMARY KEY (`id`),
  ADD UNIQUE KEY `email` (`email`);

--
-- AUTO_INCREMENT para tabelas despejadas
--

--
-- AUTO_INCREMENT de tabela `questionnaires`
--
ALTER TABLE `questionnaires`
  MODIFY `id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=6;

--
-- AUTO_INCREMENT de tabela `questionnaire_units`
--
ALTER TABLE `questionnaire_units`
  MODIFY `id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=10;

--
-- AUTO_INCREMENT de tabela `questions`
--
ALTER TABLE `questions`
  MODIFY `id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=44;

--
-- AUTO_INCREMENT de tabela `question_options`
--
ALTER TABLE `question_options`
  MODIFY `id` int NOT NULL AUTO_INCREMENT;

--
-- AUTO_INCREMENT de tabela `responses`
--
ALTER TABLE `responses`
  MODIFY `id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=36;

--
-- AUTO_INCREMENT de tabela `sections`
--
ALTER TABLE `sections`
  MODIFY `id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=11;

--
-- AUTO_INCREMENT de tabela `surveys`
--
ALTER TABLE `surveys`
  MODIFY `id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=6;

--
-- AUTO_INCREMENT de tabela `units`
--
ALTER TABLE `units`
  MODIFY `id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=6;

--
-- Restrições para tabelas despejadas
--

--
-- Restrições para tabelas `questionnaire_units`
--
ALTER TABLE `questionnaire_units`
  ADD CONSTRAINT `fk_qu_questionnaire` FOREIGN KEY (`questionnaire_id`) REFERENCES `questionnaires` (`id`),
  ADD CONSTRAINT `fk_qu_unit` FOREIGN KEY (`unit_id`) REFERENCES `units` (`id`);

--
-- Restrições para tabelas `questions`
--
ALTER TABLE `questions`
  ADD CONSTRAINT `fk_questions_section` FOREIGN KEY (`section_id`) REFERENCES `sections` (`id`);

--
-- Restrições para tabelas `question_options`
--
ALTER TABLE `question_options`
  ADD CONSTRAINT `fk_options_question` FOREIGN KEY (`question_id`) REFERENCES `questions` (`id`);

--
-- Restrições para tabelas `responses`
--
ALTER TABLE `responses`
  ADD CONSTRAINT `fk_responses_option` FOREIGN KEY (`option_id`) REFERENCES `question_options` (`id`),
  ADD CONSTRAINT `fk_responses_question` FOREIGN KEY (`question_id`) REFERENCES `questions` (`id`),
  ADD CONSTRAINT `fk_responses_survey` FOREIGN KEY (`survey_id`) REFERENCES `surveys` (`id`);

--
-- Restrições para tabelas `sections`
--
ALTER TABLE `sections`
  ADD CONSTRAINT `fk_sections_questionnaire` FOREIGN KEY (`questionnaire_id`) REFERENCES `questionnaires` (`id`);

--
-- Restrições para tabelas `surveys`
--
ALTER TABLE `surveys`
  ADD CONSTRAINT `fk_surveys_questionnaire` FOREIGN KEY (`questionnaire_id`) REFERENCES `questionnaires` (`id`),
  ADD CONSTRAINT `fk_surveys_unit` FOREIGN KEY (`unit_id`) REFERENCES `units` (`id`);
COMMIT;

