修改badge
This commit is contained in:
@@ -1,25 +1,28 @@
|
||||
import logging
|
||||
|
||||
from odoo import fields, models, api
|
||||
from odoo.addons.bus.models.bus import channel_with_db
|
||||
|
||||
_logger = logging.getLogger(__name__)
|
||||
|
||||
class SunBadgeMenuMixin(models.AbstractModel):
|
||||
_name = 'sun.badge.menu.mixin'
|
||||
_description = '菜单徽章'
|
||||
|
||||
def get_menu_badge_count(self, action_record):
|
||||
"""
|
||||
获取当前用户的菜单徽章数
|
||||
"""
|
||||
self.ensure_one()
|
||||
# 这里应该根据具体业务逻辑来计算徽章数
|
||||
# 作为示例,我们返回一个默认值
|
||||
return 0
|
||||
# def get_menu_badge_count(self, action_record):
|
||||
# """
|
||||
# 获取当前用户的菜单徽章数
|
||||
# """
|
||||
# self.ensure_one()
|
||||
# # 这里应该根据具体业务逻辑来计算徽章数
|
||||
# # 作为示例,我们返回一个默认值
|
||||
# return 0
|
||||
|
||||
def trigger_menu_reload(self):
|
||||
"""
|
||||
通过bus触发所有用户重新加载菜单数据
|
||||
"""
|
||||
# reload_menu_data
|
||||
|
||||
_logger.info('触发菜单重新加载')
|
||||
self.env['bus.bus']._sendone(self.env.user.partner_id, 'sun_badge_menu.reload_menu_data',
|
||||
{'type': 'reload_menu_data'})
|
||||
|
||||
@@ -2,11 +2,13 @@
|
||||
|
||||
import {NavBar} from "@web/webclient/navbar/navbar";
|
||||
import {patch} from "@web/core/utils/patch";
|
||||
import { useService } from "@web/core/utils/hooks";
|
||||
|
||||
patch(NavBar.prototype, {
|
||||
setup() {
|
||||
super.setup();
|
||||
this.busService = this.env.services.bus_service;
|
||||
this.busService = this.env.services.bus_service
|
||||
console.log(this.env.services.bus_service)
|
||||
// 监听后端发送的信号,重新加载菜单数据
|
||||
this.busService.subscribe("sun_badge_menu.reload_menu_data", () => {
|
||||
//
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
'category': 'zhou',
|
||||
'version': '0.1',
|
||||
'license': 'LGPL-3',
|
||||
'depends': ['base', 'soong_workflow', 'hr', 'product', 'documents', 'purchase'],
|
||||
'depends': ['base', 'soong_workflow', 'hr', 'product', 'documents', 'purchase','sun_badge_menu'],
|
||||
'data': [
|
||||
'security/ir.model.access.csv',
|
||||
'views/inherit_product_product_views.xml',
|
||||
|
||||
@@ -5,7 +5,9 @@ from odoo.exceptions import UserError, ValidationError
|
||||
|
||||
|
||||
class InheritPurchaseOrder(models.Model):
|
||||
_inherit = 'purchase.order'
|
||||
# _inherit = 'purchase.order'
|
||||
_name = 'purchase.order'
|
||||
_inherit = ['purchase.order','sun.badge.menu.mixin']
|
||||
|
||||
json_display = fields.Char(
|
||||
string="物品详情",
|
||||
@@ -48,10 +50,15 @@ class InheritPurchaseOrder(models.Model):
|
||||
|
||||
def get_no_read_count(self):
|
||||
domain = [
|
||||
('company_id', '=', self.env.user.company_id.id),
|
||||
# ('company_id', '=', self.env.user.company_id.id),
|
||||
('state','=','draft')
|
||||
]
|
||||
return self.search_count(domain)
|
||||
|
||||
def button_confirm(self):
|
||||
self.trigger_menu_reload()
|
||||
return super(InheritPurchaseOrder, self).button_confirm()
|
||||
|
||||
def action_view_picking(self):
|
||||
if self.user_id == self.env.user:
|
||||
raise UserError("您不能接收自己创建的采购订单产品")
|
||||
|
||||
Reference in New Issue
Block a user