修改采购件入库逻辑

This commit is contained in:
dxc
2026-02-05 11:37:06 +08:00
parent 273f20f5c3
commit 1e5627dc0a
3 changed files with 260 additions and 687 deletions

View File

@ -29,21 +29,28 @@ def search_base():
# ------------------------------------------------------------------
# 1. 获取列表
# 1. 获取列表 (修改:支持状态筛选)
# ------------------------------------------------------------------
@inbound_buy_bp.route('/list', methods=['GET'])
def get_list():
try:
page = request.args.get('page', 1, type=int)
limit = request.args.get('pageSize', 15, type=int)
result = BuyInboundService.get_list(page, limit)
keyword = request.args.get('keyword', '')
# 获取状态列表参数,前端传参格式: statuses=在库,借库
statuses_str = request.args.get('statuses', '')
statuses = statuses_str.split(',') if statuses_str else []
result = BuyInboundService.get_list(page, limit, keyword, statuses)
return jsonify({"code": 200, "msg": "success", "data": result})
except Exception as e:
traceback.print_exc()
return jsonify({"code": 500, "msg": str(e)}), 500
# ------------------------------------------------------------------
# 2. 新增入库 (修改:返回创建的对象数据)
# 2. 新增入库
# ------------------------------------------------------------------
@inbound_buy_bp.route('/submit', methods=['POST'])
def submit():
@ -52,10 +59,8 @@ def submit():
if not data:
return jsonify({"code": 400, "msg": "No data"}), 400
# 调用 Service 处理入库,获取新创建的对象
new_stock = BuyInboundService.handle_inbound(data)
# 返回成功信息以及新创建的数据包含生成的ID和SKU供前端打印使用
return jsonify({
"code": 200,
"msg": "入库成功",
@ -88,4 +93,21 @@ def delete_buy(id):
BuyInboundService.delete_inbound(id)
return jsonify({"code": 200, "msg": "删除成功"})
except Exception as e:
return jsonify({"code": 500, "msg": str(e)}), 500
# ------------------------------------------------------------------
# 5. 获取关联的出库历史
# ------------------------------------------------------------------
@inbound_buy_bp.route('/<int:id>/history', methods=['GET'])
def get_history(id):
try:
history = BuyInboundService.get_outbound_history(id)
return jsonify({
"code": 200,
"msg": "success",
"data": history
})
except Exception as e:
traceback.print_exc()
return jsonify({"code": 500, "msg": str(e)}), 500