mirror of
https://github.com/bringout/oca-ocb-accounting.git
synced 2026-04-22 09:02:06 +02:00
19.0 vanilla
This commit is contained in:
parent
ba20ce7443
commit
768b70e05e
2357 changed files with 1057103 additions and 712486 deletions
67
odoo-bringout-oca-ocb-account/account/controllers/catalog.py
Normal file
67
odoo-bringout-oca-ocb-account/account/controllers/catalog.py
Normal file
|
|
@ -0,0 +1,67 @@
|
|||
# Part of Odoo. See LICENSE file for full copyright and licensing details.
|
||||
|
||||
from odoo.http import request, route
|
||||
|
||||
from odoo.addons.product.controllers.catalog import ProductCatalogController
|
||||
|
||||
|
||||
class ProductCatalogAccountController(ProductCatalogController):
|
||||
|
||||
@route('/product/catalog/get_sections', auth='user', type='jsonrpc', readonly=True)
|
||||
def product_catalog_get_sections(self, res_model, order_id, child_field, **kwargs):
|
||||
"""Return the sections which are in given order to be shown in the product catalog.
|
||||
|
||||
:param string res_model: The order model.
|
||||
:param int order_id: The order id.
|
||||
:param string child_field: The field name of the lines in the order model.
|
||||
:rtype: list
|
||||
:return: A list of dictionaries containing section information with following structure:
|
||||
[
|
||||
{
|
||||
'id': int,
|
||||
'name': string,
|
||||
'sequence': int,
|
||||
'line_count': int,
|
||||
},
|
||||
]
|
||||
"""
|
||||
order = request.env[res_model].browse(order_id)
|
||||
return order.with_company(order.company_id)._get_sections(child_field, **kwargs)
|
||||
|
||||
@route('/product/catalog/create_section', auth='user', type='jsonrpc')
|
||||
def product_catalog_create_section(
|
||||
self, res_model, order_id, child_field, name, position, **kwargs,
|
||||
):
|
||||
"""Create a new section on the given order.
|
||||
|
||||
:param string res_model: The order model.
|
||||
:param int order_id: The order id.
|
||||
:param string child_field: The field name of the lines in the order model.
|
||||
:param string name: The name of the section to create.
|
||||
:param str position: The position of the section where it should be created, either 'top'
|
||||
or 'bottom'.
|
||||
:return: A dictionary with newly created section's 'id' and 'sequence'.
|
||||
:rtype: dict
|
||||
"""
|
||||
order = request.env[res_model].browse(order_id)
|
||||
return order.with_company(order.company_id)._create_section(
|
||||
child_field, name, position, **kwargs,
|
||||
)
|
||||
|
||||
@route('/product/catalog/resequence_sections', auth='user', type='jsonrpc')
|
||||
def product_catalog_resequence_sections(
|
||||
self, res_model, order_id, sections, child_field, **kwargs,
|
||||
):
|
||||
"""Reorder the sections of a given order.
|
||||
|
||||
param string res_model: The order model.
|
||||
:param int order_id: The order id.
|
||||
:param list sections: A list of section dictionaries with their sequence.
|
||||
:param string child_field: The field name of the lines in the order model.
|
||||
:return: A dictionary with new sequences of the sections.
|
||||
:rtype: dict
|
||||
"""
|
||||
order = request.env[res_model].browse(order_id)
|
||||
return order.with_company(order.company_id)._resequence_sections(
|
||||
sections, child_field, **kwargs,
|
||||
)
|
||||
Loading…
Add table
Add a link
Reference in a new issue