Files
Agent-n8n/web_frontend/web_result/data/订单班文档资料/管理订单班图片.sh
KQL f9aab78324 chore: 更新项目资源和配置文件
详细说明:
- 更新了12个产业的完整资源文件(Agent prompts、头像、效果图等)
- 添加产业背景图片资源(交通物流、化工、土木水利等)
- 更新前端展示项目的依赖配置
- 清理无效的软链接和旧的目录结构
- 修改文件: .gitignore, package.json, 各产业资源目录
- 影响模块: 前端展示系统、资源管理系统

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-08 18:25:31 +08:00

260 lines
7.7 KiB
Bash
Executable File
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/bin/bash
# 订单班图片资源管理脚本 v3.0
# 此脚本提供统一的入口来管理订单班的图片资源
# 作者: Claude
# 日期: $(date +%Y-%m-%d)
# 设置颜色输出
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
BLUE='\033[0;34m'
NC='\033[0m' # No Color
# 项目路径
PROJECT_DIR="/Users/xiaoqi/Documents/Dev/Project/2025-09-08_n8nDEMO演示"
SCRIPTS_DIR="${PROJECT_DIR}/scripts"
DATA_DIR="${PROJECT_DIR}/data/订单班文档资料"
# 打印标题
print_banner() {
clear
echo -e "${BLUE}============================================================${NC}"
echo -e "${BLUE} 订单班图片资源管理系统 v3.0${NC}"
echo -e "${BLUE}============================================================${NC}"
echo
}
# 显示主菜单
show_menu() {
echo -e "${GREEN}请选择操作:${NC}"
echo " 1) 🔧 管理订单班图片(完整功能)"
echo " 2) 🚀 快速修复URL编码问题"
echo " 3) 📊 验证所有订单班状态"
echo " 4) 🔍 检查特定订单班"
echo " 5) 💾 备份订单班数据"
echo " 6) 🎯 高级图片链接修复(推荐)"
echo " 7) 📝 查看使用说明"
echo " 8) ❌ 退出"
echo
}
# 执行管理脚本
run_manage_script() {
echo -e "${YELLOW}启动订单班图片管理工具...${NC}"
cd "$PROJECT_DIR"
python3 "${SCRIPTS_DIR}/manage_order_images.py"
}
# 快速修复URL编码
quick_fix_urls() {
echo -e "${YELLOW}开始快速修复URL编码问题...${NC}"
echo
echo "请选择修复范围:"
echo " 1) 修复所有订单班"
echo " 2) 选择特定订单班"
echo
read -p "请输入选项 (1-2): " choice
cd "$PROJECT_DIR"
if [ "$choice" = "1" ]; then
python3 "${SCRIPTS_DIR}/fix_image_paths.py"
elif [ "$choice" = "2" ]; then
echo
echo "可选订单班: 食品,环保,财经商贸,视觉设计,能源,交通物流,智能制造,文旅,化工,大健康,智能开发,土木"
echo
read -p "请输入订单班名称(用逗号分隔): " orders
python3 "${SCRIPTS_DIR}/fix_image_paths.py" "$orders"
fi
}
# 验证所有订单班
validate_all() {
echo -e "${YELLOW}验证所有订单班状态...${NC}"
cd "$PROJECT_DIR"
# 统计信息
echo
for dir in "$DATA_DIR"/*; do
if [ -d "$dir" ] && [ "$(basename "$dir")" != ".DS_Store" ]; then
order_name=$(basename "$dir")
if [ -d "$dir/notion文稿/image" ]; then
jpg_count=$(find "$dir/notion文稿/image" -name "*.jpg" 2>/dev/null | wc -l)
png_count=$(find "$dir/notion文稿/image" -name "*.png" 2>/dev/null | wc -l)
total=$((jpg_count + png_count))
echo -e " ${GREEN}$order_name${NC}: $total 张图片 (JPG:$jpg_count, PNG:$png_count)"
else
echo -e " ${RED}$order_name${NC}: 无图片目录"
fi
fi
done
# 检查URL编码
echo
echo -e "${YELLOW}检查URL编码问题...${NC}"
url_count=$(grep -r '%[0-9A-F][0-9A-F]' "$DATA_DIR" --include="*.md" 2>/dev/null | grep -E '\.(jpg|jpeg|png)' | wc -l)
if [ $url_count -gt 0 ]; then
echo -e " ${RED}⚠️ 发现 $url_count 个URL编码路径${NC}"
echo " 建议运行选项2进行快速修复"
else
echo -e " ${GREEN}✅ 没有URL编码问题${NC}"
fi
}
# 检查特定订单班
check_order() {
echo -e "${YELLOW}检查特定订单班...${NC}"
echo
echo "可选订单班:"
ls -1 "$DATA_DIR" | grep -v ".DS_Store"
echo
read -p "请输入订单班名称: " order_name
order_dir="$DATA_DIR/$order_name"
if [ ! -d "$order_dir" ]; then
echo -e "${RED}错误: 订单班 '$order_name' 不存在${NC}"
return
fi
echo
echo -e "${BLUE}=== $order_name 详细信息 ===${NC}"
# 检查图片
if [ -d "$order_dir/notion文稿/image" ]; then
echo "图片统计:"
echo " JPG: $(find "$order_dir/notion文稿/image" -name "*.jpg" 2>/dev/null | wc -l)"
echo " PNG: $(find "$order_dir/notion文稿/image" -name "*.png" 2>/dev/null | wc -l)"
echo " JPEG: $(find "$order_dir/notion文稿/image" -name "*.jpeg" 2>/dev/null | wc -l)"
fi
# 检查Markdown文件
if [ -d "$order_dir/notion文稿" ]; then
echo
echo "Markdown文件:"
ls -1 "$order_dir/notion文稿"/*.md 2>/dev/null | head -5
fi
# 检查URL编码
echo
echo "URL编码检查:"
url_count=$(grep -r '%[0-9A-F][0-9A-F]' "$order_dir" --include="*.md" 2>/dev/null | grep -E '\.(jpg|jpeg|png)' | wc -l)
if [ $url_count -gt 0 ]; then
echo -e " ${RED}发现 $url_count 个URL编码路径${NC}"
else
echo -e " ${GREEN}没有URL编码问题${NC}"
fi
}
# 备份数据
backup_data() {
echo -e "${YELLOW}开始备份订单班数据...${NC}"
timestamp=$(date +%Y%m%d_%H%M%S)
backup_dir="${PROJECT_DIR}/backups/backup_${timestamp}"
echo "创建备份目录: $backup_dir"
mkdir -p "$backup_dir"
echo "复制数据文件..."
cp -r "$DATA_DIR" "$backup_dir/"
echo -e "${GREEN}✅ 备份完成!${NC}"
echo "备份位置: $backup_dir"
}
# 运行高级图片修复
run_advanced_restoration() {
echo -e "${YELLOW}启动高级图片链接修复工具...${NC}"
echo
echo -e "${GREEN}此工具使用智能算法:${NC}"
echo " • 分析备份文件恢复原始映射"
echo " • 按类别和序号智能匹配"
echo " • 模糊匹配未映射的文件"
echo " • 自动修复断开的图片链接"
echo
cd "$PROJECT_DIR"
python3 "${SCRIPTS_DIR}/advanced_image_restoration.py"
}
# 显示使用说明
show_help() {
echo -e "${BLUE}=== 使用说明 ===${NC}"
echo
echo "本脚本提供以下功能:"
echo
echo "1. ${GREEN}管理订单班图片${NC}"
echo " - 提供完整的图片管理功能"
echo " - 支持选择特定订单班进行处理"
echo " - 包含验证、修复、备份等功能"
echo
echo "2. ${GREEN}快速修复URL编码${NC}"
echo " - 修复图片路径中的URL编码问题"
echo " - 移除不必要的 ./ 前缀"
echo " - 支持批量或单独处理"
echo
echo "3. ${GREEN}验证状态${NC}"
echo " - 显示所有订单班的图片统计"
echo " - 检查URL编码问题"
echo " - 快速了解整体状态"
echo
echo "4. ${GREEN}备份功能${NC}"
echo " - 创建带时间戳的完整备份"
echo " - 保护数据安全"
echo
echo -e "${YELLOW}提示:${NC}"
echo "- 建议在执行修复前先进行备份"
echo "- 如发现URL编码问题使用选项2快速修复"
echo "- 所有Python脚本位于 scripts/ 目录"
echo
read -p "按Enter键继续..."
}
# 主程序
main() {
print_banner
while true; do
show_menu
read -p "请输入选项 (1-8): " choice
case $choice in
1)
run_manage_script
;;
2)
quick_fix_urls
;;
3)
validate_all
;;
4)
check_order
;;
5)
backup_data
;;
6)
run_advanced_restoration
;;
7)
show_help
;;
8)
echo -e "${GREEN}再见!${NC}"
exit 0
;;
*)
echo -e "${RED}无效选项,请重新选择${NC}"
;;
esac
echo
read -p "按Enter键返回主菜单..."
clear
print_banner
done
}
# 运行主程序
main