safety-eval-service/docs/scripts/test-qual-filing-api.sh

49 lines
1.7 KiB
Bash
Raw Permalink Normal View History

#!/usr/bin/env bash
# 资质备案管理 API 冒烟测试(需本地服务已启动且已执行 init-v2.sql / 增量脚本)
set -euo pipefail
BASE_URL="${BASE_URL:-http://localhost:8095/safety-eval}"
ORG_INFO_ID="${ORG_INFO_ID:-1}"
CURL_OPTS=(-s -H "orgInfoId: ${ORG_INFO_ID}")
echo "== 1. 创建备案草稿 =="
DRAFT=$(curl "${CURL_OPTS[@]}" -w "\n__HTTP__%{http_code}" -X POST "${BASE_URL}/qual-filing/draft?applyTypeCode=1")
HTTP_CODE="${DRAFT##*__HTTP__}"
BODY="${DRAFT%__HTTP__*}"
if [[ "${HTTP_CODE}" != "200" ]]; then
echo "HTTP ${HTTP_CODE}"
echo "${BODY}"
echo "创建草稿失败:接口返回非 200401 多为未配置 local 免鉴权,需重启服务)"
exit 1
fi
FILING_ID=$(echo "$BODY" | python3 -c "import sys,json; print(json.load(sys.stdin)['data']['id'])" 2>/dev/null || echo "")
echo "filingId=${FILING_ID}"
if [[ -z "${FILING_ID}" ]]; then
echo "响应: ${BODY}"
echo "创建草稿失败:未解析到 filingId请检查服务与 orgInfoId当前=${ORG_INFO_ID}"
exit 1
fi
echo "== 2. 初始化材料模板 =="
curl "${CURL_OPTS[@]}" -X POST "${BASE_URL}/qual-filing-material/init-template?filingId=${FILING_ID}"
echo
echo "== 3. 暂存备案信息 =="
curl "${CURL_OPTS[@]}" -X POST "${BASE_URL}/qual-filing/save-draft" \
-H 'Content-Type: application/json' \
-d "{\"id\":${FILING_ID},\"filingUnitName\":\"测试评价机构\",\"businessScope\":\"安全评价\"}"
echo
echo "== 4. 备案详情 =="
curl "${CURL_OPTS[@]}" "${BASE_URL}/qual-filing/detail?id=${FILING_ID}"
echo
echo "== 5. 备案申请分页 =="
curl "${CURL_OPTS[@]}" "${BASE_URL}/qual-filing/page?current=1&size=10"
echo
echo "完成(提交/审核需材料与承诺书齐全后再测)"