Files
study-tools/studies_base/models/study_questionnaire.py
clementthomas 87d98be89e [IMP] studies_base:
Vues Questionnaire + Participant + Response + Progress Status
2024-07-18 10:43:35 +02:00

50 lines
2.8 KiB
Python

# -*- coding: utf-8 -*-
from odoo import api, fields, models, _
from odoo import osv
from odoo.exceptions import UserError
class StudyQuestionnaire(models.Model):
_name = "study.questionnaire"
title = fields.Char("Nom du questionnaire")
name = fields.Char("Acronyme")
progress_status = fields.Many2one("study.questionnaire.progress.status", string="Statut du questionnaire")
approval_date = fields.Datetime("Date d'approbation")
last_review_date = fields.Datetime("Dernière relecture")
effective_period_start = fields.Datetime("Début de la collecte")
effective_period_end = fields.Datetime("Fin de la collecte")
study_id = fields.Many2one("study.study", string="Étude")
category = fields.Many2one("study.questionnaire.category", string="Catégorie de questionnaire")
type = fields.Many2one("study.questionnaire.type", string="Type de questionnaire")
purpose = fields.Text("Objectif")
subject_type = fields.Many2one("study.questionnaire.subject.type", string="Sujets")
description = fields.Text("Description du questionnaire")
jurisdiction = fields.Many2many("study.region", string="Zones géographiques ciblées")
derived_from = fields.Many2one("study.questionnaire", string="Dérivé de")
version = fields.Char("Vestion")
status = fields.Many2one("study.questionnaire.status", string="Statut de publication")
experimental = fields.Boolean("Questionnaire de test")
author = fields.Many2one("study.author", string="Platforme d'étude")
identifier_author = fields.Char("ID plateforme")
identifier_primary_id = fields.Char("Identifiant Seintinelles", readonly=True)
rank_in_study = fields.Integer("Rang dans l'étude")
fixed_start_date = fields.Datetime("Date de début de collecte")
fixed_end_date = fields.Datetime("Date limite de collecte")
repeated = fields.Integer("Nombre de répétition")
repeat_delay = fields.Integer("Délai de répétition")
repeat_delay_type = fields.Selection([("d", "Jour"), ("m", "Mois"), ("y", "Année")], string="Type de délai de répétition")
following = fields.Many2one("study.questionnaire", string="Questionnaire précédent")
following_delay = fields.Integer("Délai avec le questionnaire précédent")
following_delay_type = fields.Selection([("d", "Jour"), ("m", "Mois"), ("y", "Année")], string="Type de délai avec le questionnaire précédent")
preceding = fields.Many2one("study.questionnaire", string="Questionnaire suivant")
preceding_delay = fields.Integer("Délai avec le questionnaire suivant")
preceding_delay_type = fields.Selection([("d", "Jour"), ("m", "Mois"), ("y", "Année")], string="Type de délai avec le questionnaire suivant")
copyright = fields.Text("Copyright")
copyright_label = fields.Char("Propriétaire et année du copyright")