mirror of
https://github.com/guohuadeng/app-odoo.git
synced 2025-02-23 04:11:36 +02:00
54 lines
2.1 KiB
Python
54 lines
2.1 KiB
Python
# -*- coding: utf-8 -*-
|
||
|
||
# Created on 2018-11-28
|
||
# author: 欧度智能,https://www.odooai.cn
|
||
# email: 300883@qq.com
|
||
# resource of odooai
|
||
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
||
|
||
# Odoo16在线用户手册(长期更新)
|
||
# https://www.odooai.cn/documentation/16.0/zh_CN/index.html
|
||
|
||
# Odoo16在线开发者手册(长期更新)
|
||
# https://www.odooai.cn/documentation/16.0/zh_CN/developer.html
|
||
|
||
# Odoo13在线用户手册(长期更新)
|
||
# https://www.odooai.cn/documentation/user/13.0/zh_CN/index.html
|
||
|
||
# Odoo13在线开发者手册(长期更新)
|
||
# https://www.odooai.cn/documentation/13.0/index.html
|
||
|
||
# Odoo在线中文用户手册(长期更新)
|
||
# https://www.odooai.cn/documentation/user/10.0/zh_CN/index.html
|
||
|
||
# Odoo10离线中文用户手册下载
|
||
# https://www.odooai.cn/odoo10_user_manual_document_offline/
|
||
# Odoo10离线开发手册下载-含python教程,jquery参考,Jinja2模板,PostgresSQL参考(odoo开发必备)
|
||
# https://www.odooai.cn/odoo10_developer_document_offline/
|
||
# description:
|
||
|
||
from odoo import api, fields, models, _
|
||
from odoo.exceptions import UserError, ValidationError
|
||
|
||
class AccountAccount(models.Model):
|
||
_inherit = ['account.account']
|
||
_parent_name = "parent_id"
|
||
_parent_store = True
|
||
_parent_order = 'code'
|
||
# _rec_name = 'complete_name'
|
||
|
||
parent_id = fields.Many2one('account.account', 'Parent Chart', index=True, ondelete='cascade')
|
||
child_ids = fields.One2many('account.account', 'parent_id', 'Child Chart')
|
||
parent_path = fields.Char(index=True)
|
||
|
||
@api.model
|
||
def _search_new_account_code(self, company, digits, prefix):
|
||
# 分隔符,金蝶为 ".",用友为"",注意odoo中一级科目,现金默认定义是4位头,银行是6位头
|
||
delimiter = '.'
|
||
for num in range(1, 100):
|
||
new_code = str(prefix.ljust(digits - 1, '0')) + delimiter + '%02d' % (num)
|
||
rec = self.search([('code', '=', new_code), ('company_id', '=', company.id)], limit=1)
|
||
if not rec:
|
||
return new_code
|
||
raise UserError(_('Cannot generate an unused account code.'))
|