基础信息读取错误,未修改完成
This commit is contained in:
96
inventory-backend/app/api/v1/inbound/base.py
Normal file
96
inventory-backend/app/api/v1/inbound/base.py
Normal file
@ -0,0 +1,96 @@
|
||||
from flask import Blueprint, request, jsonify
|
||||
# 修改为这一行,指向 app/services/inbound/base_service.py
|
||||
from app.services.inbound.base_service import MaterialBaseService
|
||||
import traceback
|
||||
|
||||
# 定义蓝图
|
||||
# name='inbound_base' 确保全局唯一,防止和其他蓝图重名
|
||||
inbound_base_bp = Blueprint('inbound_base', __name__)
|
||||
|
||||
|
||||
# ------------------------------------------------------------------
|
||||
# 1. 获取基础信息列表 (GET)
|
||||
# 路由: /api/v1/inbound/base/list
|
||||
# ------------------------------------------------------------------
|
||||
@inbound_base_bp.route('/list', methods=['GET'])
|
||||
def get_list():
|
||||
try:
|
||||
# 获取分页参数
|
||||
page = request.args.get('pageNum', 1, type=int)
|
||||
limit = request.args.get('pageSize', 10, type=int)
|
||||
|
||||
# 获取筛选参数
|
||||
filters = {
|
||||
"keyword": request.args.get('keyword'),
|
||||
"category": request.args.get('category'),
|
||||
"type": request.args.get('type'),
|
||||
"isEnabled": request.args.get('isEnabled')
|
||||
}
|
||||
|
||||
# 调用 Service 层逻辑
|
||||
result = MaterialBaseService.get_list(page, limit, filters)
|
||||
|
||||
return jsonify({
|
||||
"code": 200,
|
||||
"msg": "success",
|
||||
"data": result
|
||||
})
|
||||
except Exception as e:
|
||||
traceback.print_exc()
|
||||
return jsonify({"code": 500, "msg": str(e)}), 500
|
||||
|
||||
|
||||
# ------------------------------------------------------------------
|
||||
# 2. 新增基础信息 (POST)
|
||||
# 路由: /api/v1/inbound/base/
|
||||
# ------------------------------------------------------------------
|
||||
@inbound_base_bp.route('/', methods=['POST'])
|
||||
def add_material():
|
||||
try:
|
||||
data = request.get_json()
|
||||
if not data:
|
||||
return jsonify({"code": 400, "msg": "No data provided"}), 400
|
||||
|
||||
MaterialBaseService.create_material(data)
|
||||
return jsonify({"code": 200, "msg": "新增成功"})
|
||||
except ValueError as ve:
|
||||
# 捕获业务逻辑验证错误(如名称重复)
|
||||
return jsonify({"code": 400, "msg": str(ve)}), 400
|
||||
except Exception as e:
|
||||
traceback.print_exc()
|
||||
return jsonify({"code": 500, "msg": "系统错误"}), 500
|
||||
|
||||
|
||||
# ------------------------------------------------------------------
|
||||
# 3. 修改基础信息 (PUT)
|
||||
# 路由: /api/v1/inbound/base/
|
||||
# ------------------------------------------------------------------
|
||||
@inbound_base_bp.route('/', methods=['PUT'])
|
||||
def update_material():
|
||||
try:
|
||||
data = request.get_json()
|
||||
if not data or not data.get('id'):
|
||||
return jsonify({"code": 400, "msg": "ID不能为空"}), 400
|
||||
|
||||
MaterialBaseService.update_material(data.get('id'), data)
|
||||
return jsonify({"code": 200, "msg": "更新成功"})
|
||||
except Exception as e:
|
||||
traceback.print_exc()
|
||||
return jsonify({"code": 500, "msg": str(e)}), 500
|
||||
|
||||
|
||||
# ------------------------------------------------------------------
|
||||
# 4. 删除基础信息 (DELETE)
|
||||
# 路由: /api/v1/inbound/base/<id>
|
||||
# ------------------------------------------------------------------
|
||||
@inbound_base_bp.route('/<int:id>', methods=['DELETE'])
|
||||
def delete_material(id):
|
||||
try:
|
||||
MaterialBaseService.delete_material(id)
|
||||
return jsonify({"code": 200, "msg": "删除成功"})
|
||||
except ValueError as ve:
|
||||
# 捕获依赖检查错误(如已被库存引用)
|
||||
return jsonify({"code": 400, "msg": str(ve)}), 400
|
||||
except Exception as e:
|
||||
traceback.print_exc()
|
||||
return jsonify({"code": 500, "msg": str(e)}), 500
|
||||
Reference in New Issue
Block a user