#!/bin/bash set -u cd /var/www/onebot JAR=/tmp/ob40.txt rm -f $JAR echo "=== 登录 ===" BODY=$(curl -s -c $JAR http://127.0.0.1:8081/auth/login) CSRF=$(echo "$BODY" | grep -oE 'name="csrf-token" content="[^"]*"' | sed 's/.*content="//;s/"//') curl -s -b $JAR -c $JAR -X POST http://127.0.0.1:8081/auth/login \ -d "username=ruiguo_wang@163.com" -d "password=wrg521113.." -d "_token=$CSRF" \ -H "X-CSRF-TOKEN: $CSRF" -o /dev/null -w "login HTTP=%{http_code}\n" echo "" echo "=== 详情页 HTTP 状态 ===" curl -s -b $JAR -o /tmp/ob40_detail.html -w "bom/show/3 HTTP=%{http_code}\n" http://127.0.0.1:8081/bom/show/3 echo "" echo "=== 页面关键元素检查 ===" echo -n "横向滚动容器: "; grep -c 'overflow-x:auto' /tmp/ob40_detail.html echo -n "列设置按钮: "; grep -c 'btnColumnSettings' /tmp/ob40_detail.html echo -n "Teable下拉: "; grep -c 'btnTeablePaste' /tmp/ob40_detail.html echo -n "Excel模板导出: "; grep -c 'btnExcelTemplate' /tmp/ob40_detail.html echo -n "Excel导出xlsx: "; grep -c 'btnExcelExport' /tmp/ob40_detail.html echo -n "粘贴手动补齐输入框(pasteBaseUrl): "; grep -c 'pasteBaseUrl' /tmp/ob40_detail.html echo -n "缩略图列显示友好(非JSON, 看是否有image.png): "; grep -c 'image.png' /tmp/ob40_detail.html echo "" echo "=== 列显隐 API 测试(隐藏 seq + 项目) ===" curl -s -b $JAR -X POST http://127.0.0.1:8081/bom/api/3/column-visibility \ -H "Content-Type: application/json" \ -H "X-CSRF-TOKEN: $CSRF" \ -d '{"keys":["seq","项目"]}' -w "\nvisibility HTTP=%{http_code}\n" echo "" echo "=== 验证隐藏列已持久化 ===" mysql -uonebot -p'OneBot_Db_7xKpQ9z' -h127.0.0.1 onebot -e "SELECT hiddenColumns FROM zp_bom WHERE id=3;" 2>/dev/null echo "" echo "=== 导出 xlsx ===" curl -s -b $JAR -o /tmp/ob40_export.xlsx -w "export xlsx HTTP=%{http_code} size=%{size_download}\n" "http://127.0.0.1:8081/bom/api/3/export?format=xlsx" echo -n "xlsx 文件头(应为 PK): "; head -c 2 /tmp/ob40_export.xlsx; echo "" echo "" echo "=== 导出模板 ===" curl -s -b $JAR -o /tmp/ob40_tpl.xlsx -w "export-template HTTP=%{http_code} size=%{size_download}\n" "http://127.0.0.1:8081/bom/api/3/export-template" echo "" echo "=== 恢复列显隐(清空) ===" curl -s -b $JAR -X POST http://127.0.0.1:8081/bom/api/3/column-visibility \ -H "Content-Type: application/json" \ -H "X-CSRF-TOKEN: $CSRF" \ -d '{"keys":[]}' -w "reset HTTP=%{http_code}\n" echo "" echo "=== 全部完成 ==="