41 lines
1.8 KiB
Bash
41 lines
1.8 KiB
Bash
#!/bin/bash
|
|
cd /var/www/onebot
|
|
|
|
echo "=== BOM1 前2行 extra ==="
|
|
mysql -uonebot -p'OneBot_Db_7xKpQ9z' -h127.0.0.1 onebot -e "SELECT id, seq, partNo, LEFT(extra,200) e FROM zp_bom_item WHERE bomId=1 ORDER BY id LIMIT 2\G" 2>/dev/null
|
|
|
|
echo ""
|
|
echo "=== zp_bom_item 表结构 ==="
|
|
mysql -uonebot -p'OneBot_Db_7xKpQ9z' -h127.0.0.1 onebot -e "SHOW CREATE TABLE zp_bom_item\G" 2>/dev/null | grep -E "CREATE|\`seq\`|\`partNo\`|\`extra\`"
|
|
|
|
echo ""
|
|
echo "=== 登录并拉取两个 BOM 的详情页 ==="
|
|
JAR=/tmp/ob38b.txt
|
|
rm -f $JAR
|
|
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
|
|
curl -s -b $JAR http://127.0.0.1:8081/bom/show/1 -o /tmp/ob38b_1.html
|
|
curl -s -b $JAR http://127.0.0.1:8081/bom/show/3 -o /tmp/ob38b_3.html
|
|
|
|
cat > /tmp/check_row.php <<'PHPEOF'
|
|
<?php
|
|
foreach ([1, 3] as $bid) {
|
|
$h = file_get_contents("/tmp/ob38b_$bid.html");
|
|
echo "=== BOM $bid 页面渲染的第一行非空单元格 ===\n";
|
|
if (! preg_match('/<tbody>(.*?)<\/tbody>/s', $h, $m)) { echo "no tbody\n"; continue; }
|
|
if (! preg_match_all('/<tr data-item-id="(\d+)"(.*?)<\/tr>/s', $m[1], $rows)) { echo "no rows\n"; continue; }
|
|
$n = 0;
|
|
foreach ($rows[2] as $i => $body) {
|
|
preg_match_all('/data-key="([^"]*)"[^>]*value="([^"]*)"/', $body, $mm, PREG_SET_ORDER);
|
|
$filled = [];
|
|
foreach ($mm as $x) { if ($x[2] !== '') { $filled[] = $x[1].'='.mb_substr($x[2], 0, 24); } }
|
|
echo "row ".$rows[1][$i].": ".implode(' | ', $filled)."\n";
|
|
if (++$n >= 2) break;
|
|
}
|
|
}
|
|
PHPEOF
|
|
php /tmp/check_row.php
|