Files
gzth/anita_theme_setting/models/anita_favorite_menu.py
T
2024-06-20 13:39:24 +08:00

54 lines
1.3 KiB
Python

# -*- coding: utf-8 -*-
from odoo import api, fields, models
class AnitaFavoriteMenu(models.Model):
'''
user favorite menu
'''
_name = 'anita_theme_setting.favorite_menu'
_order = "sequence"
_description = "user favorite menu"
def _default_sequence(self):
return self.env['ir.sequence'].next_by_code('anita_theme_setting.favorite.menu')
sequence = fields.Integer(
string="sequence",
default=_default_sequence)
menu_id = fields.Many2one(
comodel_name='ir.ui.menu',
string='Favorite Menu',
required=True,
ondelete='cascade')
user_id = fields.Many2one(
comodel_name='res.users',
string='User Name',
default=lambda self: self.env.user.id)
@api.model
def unlink_menu_id(self, user_id, menu_id):
'''
unlink
:param user_id:
:param menu_id:
:return:
'''
value = self.search(
[('menu_id', '=', menu_id), ('user_id', '=', user_id)])
return value.unlink()
@api.model
def update_favorite_menu(self, favorites):
'''
update favoirte
:return:
'''
records = self.search([('user_id', '=', self.env.uid)])
records.unlink()
self.create(favorites)
return self.search_read([('user_id', '=', self.env.uid)])