Files
Agent-n8n/data/订单班文档资料/管理订单班图片.sh
Yep_Q 67f5dfbe50 feat: 实现多订单班支持系统
主要功能:
- 修改RequirementModal支持12个订单班选择
- 添加OrderClassIconMap图标映射组件
- Store中添加selectedOrderClass状态管理
- WorkflowPage支持传递orderClass参数
- web_result添加URL参数切换功能
- 创建order-class-handler.js动态处理页面主题

技术改进:
- 创建软链接关联订单班数据目录
- 生成wenlu.json和food.json数据结构
- 删除重复的web_result目录
- 添加测试页面test-order-class.html

影响范围:
- 展会策划系统现支持12个订单班
- 结果展示页面自动适配不同订单班主题
- 用户可选择不同行业生成对应方案

🤖 Generated with Claude Code

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-29 10:02:15 +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