质量模块和库存扫码
This commit is contained in:
36
stock_barcode/models/stock_quant_package.py
Normal file
36
stock_barcode/models/stock_quant_package.py
Normal file
@@ -0,0 +1,36 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# Part of Odoo. See LICENSE file for full copyright and licensing details.
|
||||
|
||||
from odoo import models, api
|
||||
|
||||
|
||||
class QuantPackage(models.Model):
|
||||
_inherit = 'stock.quant.package'
|
||||
_barcode_field = 'name'
|
||||
|
||||
@api.model
|
||||
def _search(self, args, offset=0, limit=None, order=None, count=False, access_rights_uid=None):
|
||||
args = self.env.company.nomenclature_id._preprocess_gs1_search_args(args, ['package'], 'name')
|
||||
return super()._search(args, offset=offset, limit=limit, order=order, count=count, access_rights_uid=access_rights_uid)
|
||||
|
||||
@api.model
|
||||
def action_create_from_barcode(self, vals_list):
|
||||
""" Creates a new package then returns its data to be added in the client side cache.
|
||||
"""
|
||||
res = self.create(vals_list)
|
||||
return {
|
||||
'stock.quant.package': res.read(self._get_fields_stock_barcode(), False)
|
||||
}
|
||||
|
||||
@api.model
|
||||
def _get_fields_stock_barcode(self):
|
||||
return ['name', 'location_id', 'package_type_id', 'quant_ids']
|
||||
|
||||
@api.model
|
||||
def _get_usable_packages(self):
|
||||
usable_packages_domain = [
|
||||
'|',
|
||||
('package_use', '=', 'reusable'),
|
||||
('location_id', '=', False),
|
||||
]
|
||||
return self.env['stock.quant.package'].search(usable_packages_domain)
|
||||
Reference in New Issue
Block a user