# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). import json from odoo import models class SurveyUserInput(models.Model): _inherit = "survey.user_input" def save_lines(self, question, answer, comment=None): if question.question_type == "file": old_answers = self.env["survey.user_input.line"].search([ ("user_input_id", "=", self.id), ("question_id", "=", question.id), ]) vals = { "user_input_id": self.id, "question_id": question.id, "skipped": False, "answer_type": "file", } if answer: file_data = json.loads(answer) vals["value_file"] = file_data.get("data") vals["value_file_fname"] = file_data.get("name") else: vals.update(answer_type=None, skipped=True) if old_answers: old_answers.write(vals) else: self.env["survey.user_input.line"].create(vals) else: return super().save_lines(question, answer, comment=comment)