本模块主要实现了销售扩展管理的功能,包括销售订单状态更新、销售订单附件下载等功能。主要涉及的文件有stock_picking.py
、sale_download_select.py
、download.py
等。
sale_function/models/stock_picking.py
此文件主要对stock.picking
模型进行了扩展,在库存调拨单的一些操作(如确认、取消、分配、完成等)时,更新关联销售订单的状态。
update_sale_order_status
:
state
字段发生变化时,会调用此方法。对于有销售订单关联(picking.sale_id
存在)的库存调拨单,会调用关联销售订单的_compute_picking_status
方法来更新销售订单状态。action_assign
、action_cancel
、action_confirm
、_action_done
:
update_sale_order_status
方法来更新销售订单状态。sale_function/wizard/sale_download_select.py
此文件主要实现了销售订单附件下载的向导功能。
action_download
:
token
的字典datas
。然后通过构建URL,跳转到/web/export/sale_xls
路径,以新窗口的形式打开下载页面。sale_function/controllers/download.py
此文件主要实现了销售订单导出为Excel文件的功能。
IIf
:
b
为真,则返回s1
,否则返回s2
。index
:
action_download
方法跳转到此路由时,此方法会自动执行,用户可以在浏览器中下载生成的Excel文件。具体操作步骤如下:
data
参数,获取订单ID和类型。odoo
环境正常运行,相关依赖库(如json
、xlsxwriter
等)已正确安装。index
方法导出Excel时,要注意文件的命名和格式,避免因文件名冲突或格式不支持导致下载失败。img
文件夹下的logo.png
文件存在,否则在生成Excel时插入图片可能会出错。