DuodooBMS源码解读之 cncw_ledger模块

news/2025/2/22 16:17:19

Odoo 18 扩展模块用户使用手册

一、模块概述

本扩展模块是基于 Odoo 18 开发的,主要涉及账务相关的功能扩展,包括付款、收款、日记账报表处理、账户明细导出、对账单操作等功能。以下将详细介绍各个模块的使用方法。

二、模块功能及操作步骤

(一)account_pay 模块(文件:cncw_ledger/models/account_pay.py

此模块主要处理账户付款相关的操作。

1. 主要功能及对应方法
  • action_done 方法
    • 功能:完成付款操作。
    • 操作步骤:在账户付款相关界面找到对应的付款记录,点击“完成”按钮(假设界面上有对应的按钮调用此方法),系统将执行 action_done 方法中的操作(当前代码中方法体省略)。
  • get_account 方法
    • 功能:取预收、预付会计科目。
    • 操作步骤:在需要获取预收、预付会计科目的地方,调用此方法(例如在某个表单填写会计科目时,系统后台可能会调用此方法),输入对应的 type_t 参数,系统将返回相应的会计科目(当前代码中方法体省略)。
  • action_confirm 方法
    • 功能:确认付款操作。
    • 操作步骤:在账户付款相关界面找到对应的付款记录,点击“确认”按钮(假设界面上有对应的按钮调用此方法),系统将执行 action_confirm 方法中的操作(当前代码中方法体省略)。
  • action_cancel_confirm 方法
    • 功能:取消确认付款操作。
    • 操作步骤:在账户付款相关界面找到已确认的付款记录,点击“取消确认”按钮(假设界面上有对应的按钮调用此方法),系统将执行 action_cancel_confirm 方法中的操作(当前代码中方法体省略)。
  • action_cancel_done 方法
    • 功能:取消已完成的付款操作。
    • 操作步骤:在账户付款相关界面找到已完成的付款记录,点击“取消完成”按钮(假设界面上有对应的按钮调用此方法),系统将执行 action_cancel_done 方法中的操作(当前代码中方法体省略)。
  • generate_account_voucher_script 方法
    • 功能:生成凭证脚本。
    • 操作步骤:在账户付款相关界面找到需要生成凭证脚本的付款记录,点击“生成凭证脚本”按钮(假设界面上有对应的按钮调用此方法),系统将执行 generate_account_voucher_script 方法中的操作(当前代码中方法体省略)。
  • generate_account_voucher 方法
    • 功能:继承创建凭证的方法,给凭证增加关联到付款单上的字段。
    • 操作步骤:在账户付款相关界面找到需要创建凭证的付款记录,点击“创建凭证”按钮(假设界面上有对应的按钮调用此方法),系统将执行 generate_account_voucher 方法中的操作(当前代码中方法体省略)。
  • generate_cancel_voucher_script 方法
    • 功能:取消生成的凭证。
    • 操作步骤:在账户付款相关界面找到已生成凭证的付款记录,点击“取消生成凭证”按钮(假设界面上有对应的按钮调用此方法),系统将执行 generate_cancel_voucher_script 方法中的操作(当前代码中方法体省略)。
  • generate_account_voucher_script_line 方法
    • 功能:产生预切凭证明细。
    • 操作步骤:在账户付款相关界面找到需要产生预切凭证明细的付款记录,点击“产生预切凭证明细”按钮(假设界面上有对应的按钮调用此方法),系统将执行 generate_account_voucher_script_line 方法中的操作(当前代码中方法体省略)。
  • _assert_balanced 方法
    • 功能:进行余额断言检查。
    • 操作步骤:在账户付款相关操作过程中,系统会自动调用此方法进行余额检查(当前代码中方法体省略)。

(二)account_cash_monthly_settle_wizard 模块(文件:cncw_ledger/wizard/account_cash_monthly_settle_wizard.py

此模块主要用于日记账报表处理。

1. 主要功能及对应方法
  • action_confirm 方法
    • 功能:确认日记账报表处理操作。
    • 操作步骤
      • 打开日记账报表处理向导界面。
      • 选择对应的期别(period_id 字段)。
      • 点击“确认”按钮(假设界面上有对应的按钮调用此方法),系统将执行 SQL 语句 select account_cash_monthly_settle(%s,%s,%s); 进行相关处理,其中参数为所选期别 ID、所选期别的上一期 ID 以及当前用户 ID。

(三)AccountDetailWizard 模块(文件:cncw_ledger/export/account_detail_wizard_inherit.py

此模块主要用于账户明细导出。

1. 主要功能及对应方法
  • _sheet_header 方法
    • 功能:返回导出 Excel 文件的表头信息。
    • 操作步骤:在账户明细导出操作中,系统会自动调用此方法获取表头信息。
  • _sheet_content 方法
    • 功能:返回导出 Excel 文件的内容信息。
    • 操作步骤:在账户明细导出操作中,系统会自动调用此方法获取内容信息。如果明细行(line_ids)为空,系统将抛出 UserError 提示“明细行不能为空”。
  • export_file 方法
    • 功能:导出账户明细信息到 Excel 文件。
    • 操作步骤
      • 打开账户明细导出向导界面。
      • 填写相关信息(如起止日期等)。
      • 点击“导出文件”按钮(假设界面上有对应的按钮调用此方法),系统将生成 Excel 文件并返回一个新窗口,用户可以在该窗口中下载生成的 Excel 文件。

(四)account_receive 模块(文件:cncw_ledger/models/account_receive.py

此模块主要处理账户收款相关的操作。

1. 主要功能及对应方法
  • action_done 方法
    • 功能:完成收款操作。
    • 操作步骤:在账户收款相关界面找到对应的收款记录,点击“完成”按钮(假设界面上有对应的按钮调用此方法),系统将执行 action_done 方法中的操作(当前代码中方法体省略)。
  • action_confirm 方法
    • 功能:确认收款操作。
    • 操作步骤:在账户收款相关界面找到对应的收款记录,点击“确认”按钮(假设界面上有对应的按钮调用此方法),系统将执行 action_confirm 方法中的操作(当前代码中方法体省略)。
  • action_cancel_confirm 方法
    • 功能:取消确认收款操作。
    • 操作步骤:在账户收款相关界面找到已确认的收款记录,点击“取消确认”按钮(假设界面上有对应的按钮调用此方法),系统将执行 action_cancel_confirm 方法中的操作(当前代码中方法体省略)。
  • action_cancel_done 方法
    • 功能:取消已完成的收款操作。
    • 操作步骤:在账户收款相关界面找到已完成的收款记录,点击“取消完成”按钮(假设界面上有对应的按钮调用此方法),系统将执行 action_cancel_done 方法中的操作(当前代码中方法体省略)。
  • generate_account_voucher_script 方法
    • 功能:生成凭证脚本。
    • 操作步骤:在账户收款相关界面找到需要生成凭证脚本的收款记录,点击“生成凭证脚本”按钮(假设界面上有对应的按钮调用此方法),系统将执行 generate_account_voucher_script 方法中的操作(当前代码中方法体省略)。
  • generate_account_voucher 方法
    • 功能:继承创建凭证的方法,给凭证增加关联到收款单上的字段。
    • 操作步骤:在账户收款相关界面找到需要创建凭证的收款记录,点击“创建凭证”按钮(假设界面上有对应的按钮调用此方法),系统将执行 generate_account_voucher 方法中的操作(当前代码中方法体省略)。
  • generate_cancel_voucher_script 方法
    • 功能:取消生成的凭证。
    • 操作步骤:在账户收款相关界面找到已生成凭证的收款记录,点击“取消生成凭证”按钮(假设界面上有对应的按钮调用此方法),系统将执行 generate_cancel_voucher_script 方法中的操作(当前代码中方法体省略)。
  • get_account 方法
    • 功能:获取会计科目。
    • 操作步骤:在需要获取会计科目的地方,调用此方法,输入对应的 type_t 参数(取值类型为 advance 预收、prepaid 预付、receive 应收),系统将返回相应的会计科目(当前代码中方法体省略)。
  • generate_account_voucher_script_line 方法
    • 功能:产生预切凭证明细。
    • 操作步骤:在账户收款相关界面找到需要产生预切凭证明细的收款记录,点击“产生预切凭证明细”按钮(假设界面上有对应的按钮调用此方法),系统将执行 generate_account_voucher_script_line 方法中的操作(当前代码中方法体省略)。
  • generate_account_voucher_script_line_c_items 方法
    • 功能:生成借方明细。
    • 操作步骤:在账户收款相关界面找到需要生成借方明细的收款记录,点击“生成借方明细”按钮(假设界面上有对应的按钮调用此方法),系统将执行 generate_account_voucher_script_line_c_items 方法中的操作(当前代码中方法体省略)。
  • _assert_balanced 方法
    • 功能:进行余额断言检查。
    • 操作步骤:在账户收款相关操作过程中,系统会自动调用此方法进行余额检查(当前代码中方法体省略)。

(五)WizardControlModel 模块(文件:cncw_ledger/wizard/wizard_control_model.py

此模块主要用于添加模块操作。

1. 主要功能及对应方法
  • action_done 方法
    • 功能:完成添加模块操作。
    • 操作步骤
      • 打开添加模块向导界面。
      • 选择对应的期间表(master_id 字段)。
      • 选择需要添加的模块(ir_model_ids 字段)。
      • 点击“完成”按钮(假设界面上有对应的按钮调用此方法),系统将为所选模块创建对应的期间控制行记录。

(六)account_statement 模块(文件:cncw_ledger/models/account_statement.py

此模块主要处理对账单相关的操作。

1. 主要功能及对应方法
  • action_create_invoice 方法
    • 功能:产生发票。
    • 操作步骤
      • 在对账单相关界面找到对应的对账单记录。
      • 点击“产生发票”按钮(假设界面上有对应的按钮调用此方法),系统将执行以下操作:
        • 调用父类的 action_create_invoice 方法。
        • 对于生成的发票的发票行,如果 account2_idsub_account_typehas,则将 sub_account_id 设置为对账单的合作伙伴 ID。
        • 如果发票行的 account1_id 为空,则根据发票类型和产品类型获取对应的付款账户并设置给 account1_id

三、注意事项

  • 部分方法的方法体在当前代码中省略,实际使用时请根据具体实现进行操作。
  • 在进行导出操作(如账户明细导出)时,可能会因为数据量过大导致性能问题,请确保系统资源充足。
  • 在进行操作时,请注意数据的准确性和完整性,避免因错误输入导致数据异常。

http://www.niftyadmin.cn/n/5862510.html

相关文章

Java集合框架大师课:从青铜到王者的数据结构指南(一)

🚀 Java集合框架大师课:从青铜到王者的数据结构指南(一) 🌟 系列定位:全网最懂小白的JCF实战教程 | 建议搭配IDE边学边练 🎯 学习路线图 第一章:初识JCF江湖 1.1 什么是JCF&#xf…

深入解析TLS协议:保障网络通信安全的关键技术

深入解析TLS协议:保障网络通信安全的关键技术 在当今信息化社会,网络安全已成为全球关注的焦点。随着技术的进步,尤其是互联网的普及,网络攻击呈现多样化、复杂化的趋势。为了保护网络系统的安全,研究人员和安全专家将…

Java 使用websocket

添加依赖 <!-- WebSocket 支持 --> <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-websocket</artifactId> </dependency>添加配置类 Configuration public class WebSocketConfig {B…

C语言学习【1】C语言关于寄存器的封装

目录 1.封装寄存的C语言的语法volatile&#xff1a;unsigned int:*pGpiobOdrvolatile unsigned int * 2.进一步C语言的封装 在嵌入式中&#xff0c;底层一定是操作寄存器&#xff0c;我有一个理念&#xff0c;凡事一定要想清楚&#xff0c;把任何知识点融入自己的理解之中&…

MinkowskiEngine安装(CUDA11.8+torch2.0.1+RTX4070TI)

1、背景 1&#xff09;因为项目要用这个库&#xff1a;MinkowskiEngine&#xff0c;Minkowski Engine — MinkowskiEngine 0.5.3 documentation 然后就用了之前安装好 MinkowskiEngine 的torch1.8.1,cuda11.1的环境。 2&#xff09;自己的代码出现cuda不支持torch用gpu进行矩…

2024系统编程语言风云变幻:Rust持续领跑,Zig与Ada异军突起

2024年系统编程语言调查报告新鲜出炉&#xff01;这份报告对Rust、Zig、Ada、C、C等主流语言进行了全面评估&#xff0c;结果令人瞩目。Rust凭借其强大的类型系统和内存安全机制继续领跑&#xff0c;而Zig和Ada则展现出巨大的潜力&#xff0c;为系统编程领域带来了新的活力。本…

有没有使用wxpython开发的类似于visio或drawio的开源项目(AI生成)

有没有使用wxpython开发的类似于visio或drawio的开源项目 是的&#xff0c;有一些使用wxPython开发的类似于Microsoft Visio或draw.io&#xff08;现为diagrams.net&#xff09;的开源项目。wxPython 是一个跨平台的GUI工具包&#xff0c;它允许Python开发者创建桌面应用程序&…

【OS安装与使用】part6-ubuntu 22.04+CUDA 12.4运行MARL算法(多智能体强化学习)

文章目录 一、待解决问题1.1 问题描述1.2 解决方法 二、方法详述2.1 必要说明2.2 应用步骤2.2.1 下载源码并安装2.2.2 安装缺失的依赖项2.2.3 训练执行MAPPO算法实例 三、疑问四、总结 一、待解决问题 1.1 问题描述 已配置好基础的运行环境&#xff0c;尝试运行MARL算法。 1…