test_goddess_card_members.sh 4.56 KB
#!/bin/bash

# 测试女神卡列表接口(带门店筛选)

echo "=========================================="
echo "测试女神卡列表接口"
echo "=========================================="

# 获取token
echo "1. 获取登录token..."
TOKEN=$(curl -s -X POST "http://localhost:2011/api/oauth/Login" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "account=admin&password=e10adc3949ba59abbe56e057f20f883e" | \
  python3 -c "import sys, json; print(json.load(sys.stdin)['data']['token'])" 2>/dev/null)

if [ -z "$TOKEN" ]; then
  echo "❌ 获取token失败"
  exit 1
fi

echo "✅ Token获取成功"
echo ""

# 测试1: 不带门店筛选
echo "2. 测试1: 不带门店筛选..."
RESPONSE1=$(curl -s -X POST "http://localhost:2011/api/Extend/lqstatistics/GetGoddessCardMembers" \
  -H "Authorization: $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "PageIndex": 1,
    "PageSize": 5
  }')

echo "$RESPONSE1" | python3 -c "
import sys, json
try:
    data = json.load(sys.stdin)
    if data.get('code') == 200:
        total = data.get('data', {}).get('pagination', {}).get('total', 0)
        count = len(data.get('data', {}).get('list', []))
        print(f'✅ 成功 - 总记录数: {total}, 当前页记录数: {count}')
    else:
        print(f'❌ 失败 - Code: {data.get(\"code\")}, Msg: {data.get(\"msg\")}')
except Exception as e:
    print(f'❌ 解析失败: {e}')
    print(sys.stdin.read())
" 2>/dev/null || echo "$RESPONSE1" | head -10
echo ""

# 获取一个门店ID用于测试
echo "3. 获取门店ID..."
STORE_ID=$(curl -s -X GET "http://localhost:2011/api/Extend/lqmdxx?currentPage=1&pageSize=1" \
  -H "Authorization: $TOKEN" | \
  python3 -c "import sys, json; data = json.load(sys.stdin); print(data.get('data', {}).get('list', [{}])[0].get('id', ''))" 2>/dev/null)

if [ -z "$STORE_ID" ]; then
  echo "❌ 获取门店ID失败"
  exit 1
fi

echo "✅ 门店ID: $STORE_ID"
echo ""

# 测试2: 带单个门店筛选
echo "4. 测试2: 带单个门店筛选 (StoreId)..."
RESPONSE2=$(curl -s -X POST "http://localhost:2011/api/Extend/lqstatistics/GetGoddessCardMembers" \
  -H "Authorization: $TOKEN" \
  -H "Content-Type: application/json" \
  -d "{
    \"PageIndex\": 1,
    \"PageSize\": 5,
    \"StoreId\": \"$STORE_ID\"
  }")

echo "$RESPONSE2" | python3 -c "
import sys, json
try:
    data = json.load(sys.stdin)
    if data.get('code') == 200:
        total = data.get('data', {}).get('pagination', {}).get('total', 0)
        count = len(data.get('data', {}).get('list', []))
        stores = set([m.get('storeName', '') for m in data.get('data', {}).get('list', [])])
        print(f'✅ 成功 - 总记录数: {total}, 当前页记录数: {count}')
        if stores:
            print(f'   门店列表: {stores}')
    else:
        print(f'❌ 失败 - Code: {data.get(\"code\")}, Msg: {data.get(\"msg\")}')
except Exception as e:
    print(f'❌ 解析失败: {e}')
    print(sys.stdin.read())
" 2>/dev/null || echo "$RESPONSE2" | head -10
echo ""

# 测试3: 带多个门店筛选
echo "5. 测试3: 带多个门店筛选 (StoreIds)..."
STORE_ID2=$(curl -s -X GET "http://localhost:2011/api/Extend/lqmdxx?currentPage=1&pageSize=2" \
  -H "Authorization: $TOKEN" | \
  python3 -c "import sys, json; data = json.load(sys.stdin); stores = data.get('data', {}).get('list', []); print(stores[1].get('id', '') if len(stores) > 1 else '')" 2>/dev/null)

if [ -n "$STORE_ID2" ]; then
  RESPONSE3=$(curl -s -X POST "http://localhost:2011/api/Extend/lqstatistics/GetGoddessCardMembers" \
    -H "Authorization: $TOKEN" \
    -H "Content-Type: application/json" \
    -d "{
      \"PageIndex\": 1,
      \"PageSize\": 5,
      \"StoreIds\": [\"$STORE_ID\", \"$STORE_ID2\"]
    }")

  echo "$RESPONSE3" | python3 -c "
import sys, json
try:
    data = json.load(sys.stdin)
    if data.get('code') == 200:
        total = data.get('data', {}).get('pagination', {}).get('total', 0)
        count = len(data.get('data', {}).get('list', []))
        stores = set([m.get('storeName', '') for m in data.get('data', {}).get('list', [])])
        print(f'✅ 成功 - 总记录数: {total}, 当前页记录数: {count}')
        if stores:
            print(f'   门店列表: {stores}')
    else:
        print(f'❌ 失败 - Code: {data.get(\"code\")}, Msg: {data.get(\"msg\")}')
except Exception as e:
    print(f'❌ 解析失败: {e}')
    print(sys.stdin.read())
" 2>/dev/null || echo "$RESPONSE3" | head -10
else
  echo "⚠️  只有一个门店,跳过多门店筛选测试"
fi
echo ""

echo "=========================================="
echo "测试完成"
echo "=========================================="