#!/bin/bash # 工单排产 API 测试脚本 # 用于快速验证后端服务是否正常 echo "=========================================" echo "工单排产模块 API 测试" echo "=========================================" echo "" # 配置 BASE_URL="http://localhost:48080" API_PREFIX="/admin-api/product/workorder-schedule" # 颜色定义 GREEN='\033[0;32m' RED='\033[0;31m' YELLOW='\033[1;33m' NC='\033[0m' # No Color # 测试函数 test_api() { local endpoint=$1 local description=$2 echo -e "${YELLOW}测试: ${description}${NC}" echo "URL: ${BASE_URL}${API_PREFIX}${endpoint}" response=$(curl -s -w "\n%{http_code}" "${BASE_URL}${API_PREFIX}${endpoint}") http_code=$(echo "$response" | tail -n1) body=$(echo "$response" | sed '$d') if [ "$http_code" == "200" ]; then echo -e "${GREEN}✓ 成功 (HTTP $http_code)${NC}" echo "响应: ${body:0:200}..." elif [ "$http_code" == "401" ] || [ "$http_code" == "403" ]; then echo -e "${YELLOW}⚠ 需要认证 (HTTP $http_code)${NC}" echo "提示: 这是正常的,说明接口存在但需要登录" elif [ "$http_code" == "404" ]; then echo -e "${RED}✗ 接口不存在 (HTTP $http_code)${NC}" echo "提示: 后端服务可能未加载 product 模块" else echo -e "${RED}✗ 错误 (HTTP $http_code)${NC}" echo "响应: $body" fi echo "" } # 检查后端服务是否运行 echo "1. 检查后端服务..." if curl -s "${BASE_URL}/actuator/health" > /dev/null 2>&1; then echo -e "${GREEN}✓ 后端服务正在运行${NC}" else echo -e "${RED}✗ 后端服务未运行或无法访问${NC}" echo "请先启动后端服务: cd yudao-server && mvn spring-boot:run" exit 1 fi echo "" # 测试 API 端点 echo "2. 测试工单排产 API..." echo "" test_api "/page?pageNo=1&pageSize=20" "获取工单排产分页列表" # 总结 echo "=========================================" echo "测试完成" echo "=========================================" echo "" echo "如果看到 '需要认证' 或 '成功',说明后端服务正常" echo "如果看到 '接口不存在',请执行以下步骤:" echo " 1. mvn clean install -DskipTests" echo " 2. 重启后端服务" echo ""