#!/bin/bash echo "=== 科技部总经理Cell金额计算完整测试 ===" echo "" # 1. 获取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; data = json.load(sys.stdin); print(data.get('data', {}).get('token', ''))") if [ -z "$TOKEN" ]; then echo "❌ 获取Token失败" exit 1 fi echo "✅ Token获取成功: ${TOKEN:0:50}..." echo "" # 2. 查询计算前的数据 echo "2. 查询计算前的数据..." BEFORE_CELL=$(mysql -h127.0.0.1 -uroot -p123456 lqerp_dev -sN -e \ "SELECT F_CellAmount FROM lq_tech_general_manager_salary_statistics WHERE F_EmployeeName LIKE '%夏萍%' AND F_StatisticsMonth = '202512'") BEFORE_UPDATE_TIME=$(mysql -h127.0.0.1 -uroot -p123456 lqerp_dev -sN -e \ "SELECT F_UpdateTime FROM lq_tech_general_manager_salary_statistics WHERE F_EmployeeName LIKE '%夏萍%' AND F_StatisticsMonth = '202512'") echo "计算前 Cell金额: $BEFORE_CELL" echo "计算前 UpdateTime: $BEFORE_UPDATE_TIME" echo "" # 3. 调用计算接口 echo "3. 调用计算接口..." RESPONSE=$(curl -s -w "\nHTTP_CODE:%{http_code}" -X POST \ "http://localhost:2011/api/Extend/lqtechgeneralmanagersalary/calculate/tech-general-manager?year=2025&month=12" \ -H "Authorization: $TOKEN") HTTP_CODE=$(echo "$RESPONSE" | grep "HTTP_CODE" | cut -d: -f2) BODY=$(echo "$RESPONSE" | sed '/HTTP_CODE/d') echo "HTTP状态码: $HTTP_CODE" if [ "$HTTP_CODE" = "200" ]; then echo "响应: $BODY" | python3 -m json.tool 2>/dev/null || echo "响应: $BODY" else echo "❌ 接口调用失败" echo "响应: $BODY" fi echo "" # 4. 等待3秒 echo "4. 等待3秒..." sleep 3 echo "" # 5. 查询计算后的数据 echo "5. 查询计算后的数据..." AFTER_CELL=$(mysql -h127.0.0.1 -uroot -p123456 lqerp_dev -sN -e \ "SELECT F_CellAmount FROM lq_tech_general_manager_salary_statistics WHERE F_EmployeeName LIKE '%夏萍%' AND F_StatisticsMonth = '202512'") AFTER_UPDATE_TIME=$(mysql -h127.0.0.1 -uroot -p123456 lqerp_dev -sN -e \ "SELECT F_UpdateTime FROM lq_tech_general_manager_salary_statistics WHERE F_EmployeeName LIKE '%夏萍%' AND F_StatisticsMonth = '202512'") echo "计算后 Cell金额: $AFTER_CELL" echo "计算后 UpdateTime: $AFTER_UPDATE_TIME" echo "" # 6. 验证结果 echo "6. 验证结果..." EXPECTED_CELL="69838.00" if [ "$AFTER_CELL" = "$EXPECTED_CELL" ]; then echo "✅ Cell金额正确: $AFTER_CELL (预期: $EXPECTED_CELL)" else echo "❌ Cell金额不正确: $AFTER_CELL (预期: $EXPECTED_CELL)" fi if [ "$AFTER_UPDATE_TIME" != "$BEFORE_UPDATE_TIME" ]; then echo "✅ UpdateTime已更新" else echo "⚠️ UpdateTime未更新" fi echo "" echo "=== 测试完成 ==="