# -*- coding: utf-8 -*- from odoo import api, fields, models class IssueApproval(models.Model): _name = "issue.approval" _description = '议题审批' _inherit = ['soong.workflow.mixin', 'mail.thread.main.attachment', 'mail.activity.mixin'] _rec_name = 'name' name = fields.Text(string='标题', required=True) code = fields.Char(string='编号', required=True, copy=False, default=lambda self: self.env['ir.sequence'].next_by_code('issue_approval_code')) create_time = fields.Date(string='创建日期', default=lambda self: fields.Date.today()) employee_id = fields.Many2one('hr.employee', string="经办人", default=lambda self: self.env.user.employee_id) department_id = fields.Many2one(related='employee_id.department_id', string="部门") yuthon_company = fields.Selection([('thtz', '集团本部'), ('thwg', '天河物管'), ('thlc', '天河粮储'), ('thtjbb', '集团本部')], related='employee_id.yuthon_company', string="所属公司") user_id = fields.Many2one('res.users', string="经办人", default=lambda self: self.env.user) meeting_details = fields.Char(string="会议详情") job_id = fields.Many2one(related='employee_id.job_id', string="岗位") is_attend = fields.Boolean(string="是否上会", default=True) issues_result = fields.Html(string="会议结果") issue_text = fields.Html(string="正文") notice_documents_ids = fields.Many2many('ir.attachment', string='议题附件') issue_approval_ids = fields.One2many('issue.approval.line', 'issue_approval_id', string="关联议题", store=True) issue_data = fields.Char(string="议题事项js") decision_data = fields.Char(string="决策清单js") issue_display = fields.Char(string="议题事项", default='{"template": "yuthon_issue.html_issue_demo"}') decision_display = fields.Char(string="决策清单", default='{"template": "yuthon_issue.html_decision_demo"}') is_parent_unit = fields.Boolean(string="上级单位") active = fields.Boolean('Active', default=True, tracking=True) urgency_level = fields.Selection([('normal', '普件'), ('urgent', '急件'), ('emergency', '特急件')], string='紧急度', default='normal') def _get_default_name_title(self): return self._description if self._description else self._name name_title = fields.Char(default=_get_default_name_title) class IssueApprovalLine(models.Model): _name = 'issue.approval.line' _description = '关联议题明细' issue_approval_id = fields.Many2one('issue.approval', string='议题审批') issue_library_id = fields.Many2one('issue.library', string='议题事项') employee_id = fields.Many2one('hr.employee', string='创建人') approval_decision_sequence = fields.Char(string='决策清单') is_party = fields.Boolean(string="党支委会") is_class = fields.Boolean(string="班子会") is_boss = fields.Boolean(string="董事会") is_note = fields.Boolean(string="上级单位")