DuodooBMS用户指引
Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.

3.4KB

销售扩展管理模块操作手册

一、模块概述

本模块主要实现了销售扩展管理的功能,包括销售订单状态更新、销售订单附件下载等功能。主要涉及的文件有stock_picking.pysale_download_select.pydownload.py等。

二、文件功能及操作说明

1. sale_function/models/stock_picking.py

此文件主要对stock.picking模型进行了扩展,在库存调拨单的一些操作(如确认、取消、分配、完成等)时,更新关联销售订单的状态。

关键函数及操作

  • update_sale_order_status
    • 功能:当库存调拨单的state字段发生变化时,会调用此方法。对于有销售订单关联(picking.sale_id存在)的库存调拨单,会调用关联销售订单的_compute_picking_status方法来更新销售订单状态。
    • 操作:该方法会自动在库存调拨单状态变化时触发,无需手动调用。
  • action_assignaction_cancelaction_confirm_action_done
    • 功能:这些方法分别在库存调拨单进行分配、取消、确认、完成操作时被调用。在调用父类的相应方法后,会调用update_sale_order_status方法来更新销售订单状态。
    • 操作:在Odoo系统中,当用户对库存调拨单进行分配、取消、确认、完成等操作时,这些方法会自动执行。

2. sale_function/wizard/sale_download_select.py

此文件主要实现了销售订单附件下载的向导功能。

关键函数及操作

  • action_download
    • 功能:将订单ID和类型数据进行处理,生成一个包含这些数据和时间戳token的字典datas。然后通过构建URL,跳转到/web/export/sale_xls路径,以新窗口的形式打开下载页面。
    • 操作:在Odoo系统中,用户在相应的向导界面点击下载按钮,会触发此方法。

3. sale_function/controllers/download.py

此文件主要实现了销售订单导出为Excel文件的功能。

关键函数及操作

  • IIf
    • 功能:一个简单的条件判断函数,如果条件b为真,则返回s1,否则返回s2
    • 操作:该函数在其他方法中可能会被调用,用于条件判断返回不同的值。
  • index
    • 功能:根据传入的订单ID和类型数据,查询相应的销售订单信息,将信息填充到Excel模板中,生成Excel文件并返回给用户下载。
    • 操作:当用户通过action_download方法跳转到此路由时,此方法会自动执行,用户可以在浏览器中下载生成的Excel文件。具体操作步骤如下:
      1. 解析传入的data参数,获取订单ID和类型。
      2. 根据订单ID查询销售订单信息。
      3. 创建Excel工作簿和工作表,设置格式。
      4. 填充销售订单的相关信息到工作表中,包括合同编号、买卖方信息、产品信息等。
      5. 关闭工作簿,生成Excel文件流。
      6. 设置HTTP响应头,将文件流返回给用户下载。

三、注意事项

  • 确保odoo环境正常运行,相关依赖库(如jsonxlsxwriter等)已正确安装。
  • 在使用index方法导出Excel时,要注意文件的命名和格式,避免因文件名冲突或格式不支持导致下载失败。
  • 确保img文件夹下的logo.png文件存在,否则在生成Excel时插入图片可能会出错。
上海开阖软件有限公司 沪ICP备12045867号-1