#!/bin/bash # 测试新功能的脚本 # 使用方法:./test_new_features.sh BASE_URL="http://localhost:2011" TOKEN="" echo "==========================================" echo "开始测试新功能接口" echo "==========================================" echo "" # 1. 获取Token echo "1. 获取Token..." LOGIN_RESPONSE=$(curl -s -X POST "${BASE_URL}/api/oauth/Login" \ -H "Content-Type: application/x-www-form-urlencoded" \ -d "account=admin&password=e10adc3949ba59abbe56e057f20f883e") TOKEN=$(echo $LOGIN_RESPONSE | python3 -c "import sys, json; print(json.load(sys.stdin)['data']['token'])" 2>/dev/null) if [ -z "$TOKEN" ]; then echo "❌ 获取Token失败" echo "响应: $LOGIN_RESPONSE" exit 1 fi echo "✅ Token获取成功" echo "" # 2. 测试开单品项明细接口 - 检查是否返回支付医院和合作机构的中文名称 echo "2. 测试开单品项明细接口(检查hgjgName和fkyyName字段)..." BILLING_DETAIL_RESPONSE=$(curl -s -X GET "${BASE_URL}/api/Extend/lqkdkdjlb/billing-item-detail-list?currentPage=1&pageSize=5" \ -H "Authorization: ${TOKEN}") echo "响应示例(前500字符):" echo $BILLING_DETAIL_RESPONSE | python3 -m json.tool 2>/dev/null | head -30 # 检查是否包含hgjgName和fkyyName字段 if echo $BILLING_DETAIL_RESPONSE | grep -q "hgjgName\|fkyyName"; then echo "✅ 开单品项明细接口包含hgjgName和fkyyName字段" else echo "⚠️ 开单品项明细接口可能未包含hgjgName和fkyyName字段" fi echo "" # 3. 测试报销申请接口 - 检查是否返回completionTime字段 echo "3. 测试报销申请接口(检查completionTime字段)..." REIMBURSEMENT_RESPONSE=$(curl -s -X GET "${BASE_URL}/api/Extend/LqReimbursementApplication?currentPage=1&pageSize=5" \ -H "Authorization: ${TOKEN}") echo "响应示例(前500字符):" echo $REIMBURSEMENT_RESPONSE | python3 -m json.tool 2>/dev/null | head -30 # 检查是否包含completionTime字段 if echo $REIMBURSEMENT_RESPONSE | grep -q "completionTime"; then echo "✅ 报销申请接口包含completionTime字段" else echo "⚠️ 报销申请接口可能未包含completionTime字段" fi echo "" # 4. 测试报销申请接口 - 测试完成时间筛选功能 echo "4. 测试报销申请接口(测试completionTime筛选)..." # 测试筛选2025年11月的完成时间 REIMBURSEMENT_FILTER_RESPONSE=$(curl -s -X GET "${BASE_URL}/api/Extend/LqReimbursementApplication?currentPage=1&pageSize=5&completionTime=2025-11-01,2025-11-30" \ -H "Authorization: ${TOKEN}") echo "筛选响应示例(前500字符):" echo $REIMBURSEMENT_FILTER_RESPONSE | python3 -m json.tool 2>/dev/null | head -30 if echo $REIMBURSEMENT_FILTER_RESPONSE | grep -q "code.*200\|list"; then echo "✅ 报销申请接口完成时间筛选功能正常" else echo "⚠️ 报销申请接口完成时间筛选可能有问题" fi echo "" # 5. 测试店内支出导入 - 需要准备Excel文件,这里只测试接口是否存在 echo "5. 测试店内支出导入接口(检查接口是否存在)..." # 注意:实际导入需要Excel文件,这里只检查接口 IMPORT_CHECK=$(curl -s -X POST "${BASE_URL}/api/Extend/LqStoreExpense/Actions/Import" \ -H "Authorization: ${TOKEN}" \ -F "file=@/dev/null" 2>&1) if echo $IMPORT_CHECK | grep -q "请选择要上传的Excel文件\|文件格式错误"; then echo "✅ 店内支出导入接口存在(需要Excel文件才能完整测试)" else echo "⚠️ 店内支出导入接口可能有问题" echo "响应: $IMPORT_CHECK" fi echo "" echo "==========================================" echo "测试完成" echo "==========================================" echo "" echo "注意:" echo "1. 店内支出导入功能需要准备Excel文件才能完整测试" echo "2. Excel格式:第0列应为门店名称(不再是门店ID)" echo "3. 修改开单金额接口的品相备份功能需要确认具体需求"