[FIX] app_common,app_odoo_customize,安全优化

This commit is contained in:
Chill
2024-03-11 16:42:04 +08:00
parent 020b3487ef
commit 79dc45b24b
6 changed files with 23 additions and 23 deletions

View File

@@ -39,7 +39,7 @@
{ {
'name': "odooAi Common Util and Tools,欧度智能基础核心优化", 'name': "odooAi Common Util and Tools,欧度智能基础核心优化",
'version': '16.23.11.24', 'version': '16.24.03.11',
'author': 'odooai.cn', 'author': 'odooai.cn',
'category': 'Base', 'category': 'Base',
'website': 'https://www.odooai.cn', 'website': 'https://www.odooai.cn',

View File

@@ -107,7 +107,7 @@ class Base(models.AbstractModel):
return dt.astimezone(pytz_timezone).strftime(return_format) return dt.astimezone(pytz_timezone).strftime(return_format)
@api.model @api.model
def get_image_from_url(self, url): def _get_image_from_url(self, url):
# 返回这个图片的base64编码 # 返回这个图片的base64编码
if not self._app_check_sys_op(): if not self._app_check_sys_op():
return False return False

View File

@@ -4,7 +4,7 @@
<h2 class="oe_slogan">odooAi Common Util and Tools</h2> <h2 class="oe_slogan">odooAi Common Util and Tools</h2>
<h3 class="oe_slogan"> Network and media and base tools </h3> <h3 class="oe_slogan"> Network and media and base tools </h3>
<div class="oe_row"> <div class="oe_row">
<h3>Latest update: v16.22.02.02</h3> <h3>Latest update: v16.24.03.11</h3>
<div class="row"> <div class="row">
<img class="oe_demo oe_screenshot img img-fluid" style="max-height: 100%;" src="banner.png"> <img class="oe_demo oe_screenshot img img-fluid" style="max-height: 100%;" src="banner.png">
</div> </div>

View File

@@ -23,7 +23,7 @@
{ {
'name': 'odoo17 Tweak,Ai Employee,Boost,Customize All in One. Customize,UI,Boost,Security,Data', 'name': 'odoo17 Tweak,Ai Employee,Boost,Customize All in One. Customize,UI,Boost,Security,Data',
'version': '16.24.03.08', 'version': '16.24.03.11',
'author': 'odooai.cn', 'author': 'odooai.cn',
'category': 'Extra Tools', 'category': 'Extra Tools',
'website': 'https://www.odooai.cn', 'website': 'https://www.odooai.cn',

View File

@@ -82,7 +82,7 @@ class ResConfigSettings(models.TransientModel):
pass pass
# 清数据o=对象, s=序列 # 清数据o=对象, s=序列
def remove_app_data(self, o, s=[]): def _remove_app_data(self, o, s=[]):
if not self._app_check_sys_op(): if not self._app_check_sys_op():
raise UserError(_('Not allow.')) raise UserError(_('Not allow.'))
@@ -137,7 +137,7 @@ class ResConfigSettings(models.TransientModel):
seqs = [ seqs = [
'sale', 'sale',
] ]
return self.remove_app_data(to_removes, seqs) return self._remove_app_data(to_removes, seqs)
def remove_product(self): def remove_product(self):
to_removes = [ to_removes = [
@@ -148,7 +148,7 @@ class ResConfigSettings(models.TransientModel):
seqs = [ seqs = [
'product.product', 'product.product',
] ]
return self.remove_app_data(to_removes, seqs) return self._remove_app_data(to_removes, seqs)
def remove_product_attribute(self): def remove_product_attribute(self):
to_removes = [ to_removes = [
@@ -157,7 +157,7 @@ class ResConfigSettings(models.TransientModel):
'product.attribute', 'product.attribute',
] ]
seqs = [] seqs = []
return self.remove_app_data(to_removes, seqs) return self._remove_app_data(to_removes, seqs)
def remove_pos(self): def remove_pos(self):
@@ -173,7 +173,7 @@ class ResConfigSettings(models.TransientModel):
seqs = [ seqs = [
'pos.', 'pos.',
] ]
res = self.remove_app_data(to_removes, seqs) res = self._remove_app_data(to_removes, seqs)
# 更新要关帐的值,因为 store=true 的计算字段要重置 # 更新要关帐的值,因为 store=true 的计算字段要重置
@@ -196,7 +196,7 @@ class ResConfigSettings(models.TransientModel):
seqs = [ seqs = [
'purchase.', 'purchase.',
] ]
return self.remove_app_data(to_removes, seqs) return self._remove_app_data(to_removes, seqs)
def remove_expense(self): def remove_expense(self):
to_removes = [ to_removes = [
@@ -209,7 +209,7 @@ class ResConfigSettings(models.TransientModel):
seqs = [ seqs = [
'hr.expense.', 'hr.expense.',
] ]
return self.remove_app_data(to_removes, seqs) return self._remove_app_data(to_removes, seqs)
def remove_mrp(self): def remove_mrp(self):
to_removes = [ to_removes = [
@@ -228,7 +228,7 @@ class ResConfigSettings(models.TransientModel):
seqs = [ seqs = [
'mrp.', 'mrp.',
] ]
return self.remove_app_data(to_removes, seqs) return self._remove_app_data(to_removes, seqs)
def remove_mrp_bom(self): def remove_mrp_bom(self):
to_removes = [ to_removes = [
@@ -237,7 +237,7 @@ class ResConfigSettings(models.TransientModel):
'mrp.bom', 'mrp.bom',
] ]
seqs = [] seqs = []
return self.remove_app_data(to_removes, seqs) return self._remove_app_data(to_removes, seqs)
def remove_inventory(self): def remove_inventory(self):
to_removes = [ to_removes = [
@@ -265,7 +265,7 @@ class ResConfigSettings(models.TransientModel):
'product.tracking.default', 'product.tracking.default',
'WH/', 'WH/',
] ]
return self.remove_app_data(to_removes, seqs) return self._remove_app_data(to_removes, seqs)
def remove_account(self): def remove_account(self):
to_removes = [ to_removes = [
@@ -286,7 +286,7 @@ class ResConfigSettings(models.TransientModel):
'hr.expense.sheet', 'hr.expense.sheet',
'account.move', 'account.move',
] ]
res = self.remove_app_data(to_removes, []) res = self._remove_app_data(to_removes, [])
# extra 更新序号 # extra 更新序号
domain = [ domain = [
@@ -395,7 +395,7 @@ class ResConfigSettings(models.TransientModel):
self.env.company.write({ self.env.company.write({
'chart_template_id': False, 'chart_template_id': False,
}) })
res = self.remove_app_data(to_removes, seqs) res = self._remove_app_data(to_removes, seqs)
return res return res
def remove_project(self): def remove_project(self):
@@ -420,7 +420,7 @@ class ResConfigSettings(models.TransientModel):
self._cr.commit() self._cr.commit()
except Exception as e: except Exception as e:
_logger.error('remove data error: %s,%s', 'project: project_sale_line_employee_map', e) _logger.error('remove data error: %s,%s', 'project: project_sale_line_employee_map', e)
return self.remove_app_data(to_removes, seqs) return self._remove_app_data(to_removes, seqs)
def remove_quality(self): def remove_quality(self):
to_removes = [ to_removes = [
@@ -439,7 +439,7 @@ class ResConfigSettings(models.TransientModel):
'quality.alert', 'quality.alert',
# 'quality.point', # 'quality.point',
] ]
return self.remove_app_data(to_removes, seqs) return self._remove_app_data(to_removes, seqs)
def remove_quality_setting(self): def remove_quality_setting(self):
to_removes = [ to_removes = [
@@ -451,7 +451,7 @@ class ResConfigSettings(models.TransientModel):
'quality.reason', 'quality.reason',
'quality.tag', 'quality.tag',
] ]
return self.remove_app_data(to_removes) return self._remove_app_data(to_removes)
def remove_website(self): def remove_website(self):
to_removes = [ to_removes = [
@@ -472,7 +472,7 @@ class ResConfigSettings(models.TransientModel):
# 'website', # 'website',
] ]
seqs = [] seqs = []
return self.remove_app_data(to_removes, seqs) return self._remove_app_data(to_removes, seqs)
def remove_message(self): def remove_message(self):
to_removes = [ to_removes = [
@@ -482,7 +482,7 @@ class ResConfigSettings(models.TransientModel):
'mail.activity', 'mail.activity',
] ]
seqs = [] seqs = []
return self.remove_app_data(to_removes, seqs) return self._remove_app_data(to_removes, seqs)
def remove_workflow(self): def remove_workflow(self):
to_removes = [ to_removes = [
@@ -491,7 +491,7 @@ class ResConfigSettings(models.TransientModel):
# 'wkf.instance', # 'wkf.instance',
] ]
seqs = [] seqs = []
return self.remove_app_data(to_removes, seqs) return self._remove_app_data(to_removes, seqs)
def remove_all_biz(self): def remove_all_biz(self):
self.remove_account() self.remove_account()

View File

@@ -20,7 +20,7 @@
<section class="container app"> <section class="container app">
<div class="oe_row oe_spaced" style="max-width: 95%;"> <div class="oe_row oe_spaced" style="max-width: 95%;">
<div class="row"> <div class="row">
<h2 class="oe_slogan">This is a Long Term Support Apps.Update: v16.24.03.08</h2> <h2 class="oe_slogan">This is a Long Term Support Apps.Update: v16.24.03.11</h2>
<div class="oe_demo" style=" margin: 30px auto 0; padding: 0 15px 0 0; border:none; width: 96%;"> <div class="oe_demo" style=" margin: 30px auto 0; padding: 0 15px 0 0; border:none; width: 96%;">
<ul class="list-group"> <ul class="list-group">
<li class="list-group-item">1. Deletes Odoo label in footer</li> <li class="list-group-item">1. Deletes Odoo label in footer</li>