133 lines
3.7 KiB
Bash
133 lines
3.7 KiB
Bash
#!/bin/bash
|
||
|
||
# 利率定价流程 API 测试脚本
|
||
# 使用前请先登录获取 token
|
||
|
||
BASE_URL="http://localhost:8080"
|
||
TOKEN=""
|
||
|
||
echo "===================================="
|
||
echo "利率定价流程 API 测试"
|
||
echo "===================================="
|
||
echo ""
|
||
|
||
# 颜色定义
|
||
GREEN='\033[0;32m'
|
||
RED='\033[0;31m'
|
||
YELLOW='\033[1;33m'
|
||
NC='\033[0m' # No Color
|
||
|
||
# 如果没有提供 token,提示用户登录
|
||
if [ -z "$TOKEN" ]; then
|
||
echo "${YELLOW}请先使用以下步骤获取 token:${NC}"
|
||
echo "1. 访问 http://localhost:8080"
|
||
echo "2. 使用 admin/admin123 登录"
|
||
echo "3. 打开浏览器开发者工具 (F12)"
|
||
echo "4. 在 Network 标签中找到登录请求"
|
||
echo "5. 从响应中复制 token 值"
|
||
echo ""
|
||
echo "然后设置 TOKEN 变量后运行此脚本"
|
||
echo ""
|
||
echo "或者使用以下方式登录 (需要手动输入验证码):"
|
||
echo ""
|
||
fi
|
||
|
||
# 测试函数
|
||
test_api() {
|
||
local method=$1
|
||
local url=$2
|
||
local data=$3
|
||
local description=$4
|
||
|
||
echo -n "测试: $description ... "
|
||
|
||
if [ "$method" = "GET" ]; then
|
||
response=$(curl -s -X GET "$BASE_URL$url" \
|
||
-H "Authorization: Bearer $TOKEN" \
|
||
-H "Content-Type: application/json")
|
||
else
|
||
response=$(curl -s -X "$method" "$BASE_URL$url" \
|
||
-H "Authorization: Bearer $TOKEN" \
|
||
-H "Content-Type: application/json" \
|
||
-d "$data")
|
||
fi
|
||
|
||
# 检查响应
|
||
if echo "$response" | grep -q '"code":200'; then
|
||
echo -e "${GREEN}✓ 通过${NC}"
|
||
echo " 响应: $(echo "$response" | head -c 200)..."
|
||
else
|
||
echo -e "${RED}✗ 失败${NC}"
|
||
echo " 响应: $response"
|
||
fi
|
||
echo ""
|
||
}
|
||
|
||
# 测试用例
|
||
echo "===================================="
|
||
echo "测试用例"
|
||
echo "===================================="
|
||
echo ""
|
||
|
||
# 测试 1: 发起利率定价流程
|
||
test_api "POST" "/loanPricing/workflow/create" '{
|
||
"orgCode": "931000",
|
||
"runType": "1",
|
||
"custIsn": "CUST001",
|
||
"custType": "个人",
|
||
"guarType": "信用",
|
||
"midPerQuickPay": "true",
|
||
"midPerEleDdc": "false",
|
||
"midEntEleDdc": "false",
|
||
"midEntWaterDdc": "false",
|
||
"applyAmt": "50000",
|
||
"isCleanEnt": "false",
|
||
"hasSettleAcct": "true",
|
||
"isManufacturing": "false",
|
||
"isAgriGuar": "false",
|
||
"isTaxA": "false",
|
||
"isAgriLeading": "false",
|
||
"loanPurpose": "consumer",
|
||
"bizProof": "true",
|
||
"collType": "一类",
|
||
"collThirdParty": "false",
|
||
"loanRate": "4.35",
|
||
"custName": "张三",
|
||
"idType": "身份证",
|
||
"isInclusiveFinance": "true"
|
||
}' "发起利率定价流程 (个人客户-信用贷款)"
|
||
|
||
# 测试 2: 发起利率定价流程 (企业客户)
|
||
test_api "POST" "/loanPricing/workflow/create" '{
|
||
"orgCode": "931000",
|
||
"runType": "1",
|
||
"custIsn": "CUST002",
|
||
"custType": "企业",
|
||
"guarType": "抵押",
|
||
"applyAmt": "500000",
|
||
"isCleanEnt": "true",
|
||
"hasSettleAcct": "true",
|
||
"isManufacturing": "true",
|
||
"isTaxA": "true",
|
||
"loanPurpose": "business",
|
||
"collType": "一线",
|
||
"collThirdParty": "false",
|
||
"loanRate": "3.85",
|
||
"custName": "测试科技有限公司",
|
||
"idType": "统一社会信用代码",
|
||
"isInclusiveFinance": "true"
|
||
}' "发起利率定价流程 (企业客户-抵押贷款)"
|
||
|
||
# 测试 3: 查询流程列表
|
||
test_api "GET" "/loanPricing/workflow/list?pageNum=1&pageSize=10" "" "查询流程列表 (第1页)"
|
||
|
||
# 测试 4: 查询流程列表 (筛选条件)
|
||
test_api "GET" "/loanPricing/workflow/list?pageNum=1&pageSize=10&custType=个人" "" "查询流程列表 (筛选:个人客户)"
|
||
|
||
# 测试 5: 查询流程列表 (按客户名称搜索)
|
||
test_api "GET" "/loanPricing/workflow/list?pageNum=1&pageSize=10&custName=张三" "" "查询流程列表 (搜索:张三)"
|
||
|
||
echo "===================================="
|
||
echo "测试完成"
|
||
echo "===================================="
|