Excel批量上传 - 快速导入库存数据

Excel批量上传 - 快速导入库存数据

Excel批量上传 - 快速导入库存数据是您管理钢材库存的得力助手。通过这个功能,您可以轻松管理和展示您的库存信息。

批量上传Excel添加利润功能说明

更新概述

优化了批量上传Excel功能,现在可以在上传时设置利润和价格类型,确保批量查询的价格计算正确。

问题修复

1. 修复 `process_excel` 函数缺少 session 参数的错误

问题: 调用 `get_quote_context()` 时缺少必需的 `session` 参数 修复: 添加 `request.session` 参数

2. 添加利润和价格类型支持

问题: 批量上传Excel时无法设置利润,导致价格计算不准确 修复:
  • 在上传表单中添加利润输入字段
  • 在上传表单中添加价格类型选择(含税/不含税)
  • 后端处理时使用这些参数

更新内容

1. 前端模板

优化前的上传表单:

优化后的上传表单:

更新的 `process_excel` 函数:

功能特点

1. 利润设置

  • 在批量上传时可以直接设置利润值
  • 默认值为0,也可以使用用户之前保存的利润值
  • 支持整数或小数输入

2. 价格类型选择

  • 含税: 使用含税价格计算
  • 不含税: 使用不含税价格计算
  • 默认选中"含税"
  • 选择的价格类型会保存到session中,下次使用时记住用户的选择

3. 界面优化

  • 表单布局更加清晰,使用Bootstrap栅格系统
  • 添加了字段标签,更容易理解
  • 按钮文字改为"上传查询",更准确描述功能
  • 文件选择框设置为必填项

使用方法

  • 准备Excel文件
- 确保第一行包含列名:品种、规格、支数 - 填入需要查询的钢材信息
  • 上传并设置参数
- 点击"选择Excel文件"按钮,选择准备好的Excel文件 - 在"利润"输入框中填入期望的利润值(默认为0) - 选择价格类型:含税 或 不含税 - 点击"上传查询"按钮
  • 查看结果
- 系统会自动查询数据库中的价格 - 根据设置的利润和价格类型计算最终价格 - 查询结果会显示在报价单列表中

品种 规格 支数
镀锌方矩管 40602.0 100
直缝焊管 108*3.5 50
角钢 50505 80

注意事项

  • Excel文件第一行必须包含:品种、规格、支数
  • 规格必须是文本格式,不能为空
  • 支数必须是数字
  • 利润可以为0或正数
  • 价格类型的选择会影响最终价格计算
  • 如果数据库中没有对应规格,会显示警告提示

参数传递流程:

  • 前端表单收集:文件、利润、价格类型
  • 后端接收并解析参数
  • 保存价格类型到session
  • 遍历Excel每一行数据
  • 调用 `create_and_save_quote()` 时传递利润和价格类型
  • 价格计算逻辑自动应用利润和税率

价格计算逻辑:

  • 在 `create_and_save_quote()` 函数中
  • 使用 `calculate_prices()` 函数计算含税和不含税价格
  • 根据用户选择的价格类型显示对应价格
  • - 前端界面
  • - URL路由配置