feat(dashboard): 首页轮播种子管理 + 三统计配置增强
数据大盘新增/增强两块运营配置: - 首页轮播种子(新):列表/新增/编辑/批量生成/预览效果;用户名可空(留空自动合成)、金额区间(min~max) - 首页数据配置(增强):自增长「百分比/固定增量」切换、真实值基数偏移、「允许数字下降」(只增不减)开关、下次预计值、立即更新二次确认;倍率上限 1.5 - 依赖 @ant-design/v5-patch-for-react-19(React 19 兼容,providers 顶部 import) - start.sh/stop.sh 跨平台重写;.run-logs/ 加入 .gitignore Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1,15 +1,39 @@
|
||||
#!/usr/bin/env bash
|
||||
# 停掉运营后台的 后端(8771) + 前端(3001)。PG 不停(开机自启,别的服务也可能用)。
|
||||
# 详见 docs/本地启动指南.md
|
||||
# 停止 start.sh 起的三个服务:用户侧 API(8770) + 后台 API(8771) + 前端(3001)。
|
||||
# 双保险:先按 start.sh 落的 PID 文件杀,再按端口兜底(Windows 走 PowerShell,mac 走 lsof)。
|
||||
# (PG 若由 brew 自启,本脚本不停它。)
|
||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
LOG_DIR="$SCRIPT_DIR/.run-logs"
|
||||
|
||||
if lsof -ti:8771 >/dev/null 2>&1; then
|
||||
lsof -ti:8771 | xargs kill && echo "✅ 后端(8771)已停"
|
||||
else
|
||||
echo "— 后端(8771)未在跑"
|
||||
fi
|
||||
case "$(uname -s)" in
|
||||
MINGW* | MSYS* | CYGWIN*) IS_WIN=1 ;;
|
||||
*) IS_WIN=0 ;;
|
||||
esac
|
||||
|
||||
if lsof -ti:3001 >/dev/null 2>&1; then
|
||||
lsof -ti:3001 | xargs kill && echo "✅ 前端(3001)已停"
|
||||
else
|
||||
echo "— 前端(3001)未在跑"
|
||||
fi
|
||||
# 1) 按 PID 文件杀(start.sh 启动时落的 MSYS/进程 PID)
|
||||
for name in user-api admin-api admin-web; do
|
||||
pf="$LOG_DIR/$name.pid"
|
||||
[ -f "$pf" ] || continue
|
||||
pid="$(cat "$pf" 2>/dev/null)"
|
||||
[ -n "$pid" ] && kill -9 "$pid" 2>/dev/null && echo " $name: 杀 PID $pid"
|
||||
rm -f "$pf"
|
||||
done
|
||||
|
||||
# 2) 按端口兜底(catch 掉 reload 子进程 / 孤儿 node 等)
|
||||
kill_port() {
|
||||
local p="$1"
|
||||
if [ "$IS_WIN" = "1" ]; then
|
||||
# 用 PowerShell 的 Get-NetTCPConnection→Stop-Process,比 netstat+taskkill 可靠
|
||||
powershell.exe -NoProfile -Command \
|
||||
"Get-NetTCPConnection -LocalPort $p -State Listen -ErrorAction SilentlyContinue | Select-Object -Expand OwningProcess -Unique | ForEach-Object { try { Stop-Process -Id \$_ -Force -ErrorAction Stop; 'killed pid '+\$_+' on :$p' } catch {} }" \
|
||||
2>/dev/null | tr -d '\r'
|
||||
else
|
||||
lsof -ti "tcp:$p" 2>/dev/null | xargs -r kill -9 2>/dev/null && echo " killed listener on :$p"
|
||||
fi
|
||||
}
|
||||
|
||||
for port in 8770 8771 3001; do
|
||||
kill_port "$port"
|
||||
done
|
||||
|
||||
echo "✅ 已停止(用户侧 8770 / 后台 8771 / 前端 3001)。"
|
||||
|
||||
Reference in New Issue
Block a user