Pengxy 2 月之前
父节点
当前提交
0aa5efc86d

+ 0 - 153
WORKORDER_SCHEDULE_FIX_SUMMARY.md

@@ -1,153 +0,0 @@
-# 工单工序排产列表问题修复总结
-
-## 问题描述
-前端菜单"工单工序排产"点击后打开的页面 `jiaohuo/ProductionSchedule.vue` 调用了不存在的API `/admin-api/jiaohuo/production/schedule/list`,导致后端报错404。
-
-## 根本原因
-1. 前端菜单关联的页面是 `jiaohuo/ProductionSchedule.vue`
-2. 该页面调用的是旧的 `jiaohuo/production` API
-3. 但实际后端实现的是 `product/workorder-schedule` API
-4. XML查询语句使用了SQL Server语法(如嵌套子查询的ROW_NUMBER),需要改为MySQL语法
-
-## 修复内容
-
-### 1. 修复XML查询语句 (WorkOrderScheduleMapper.xml)
-**文件**: `yudao-module-product/src/main/resources/mapper/product/WorkOrderScheduleMapper.xml`
-
-**修改内容**:
-- 将SQL Server的嵌套子查询语法改为MySQL的窗口函数语法
-- 使用 `<![CDATA[<=]]>` 和 `<![CDATA[>]]>` 来转义XML中的比较运算符
-- 简化ROW_NUMBER子查询,直接在LEFT JOIN中使用窗口函数
-
-**关键修改**:
-```sql
--- 修改前(SQL Server嵌套子查询)
-LEFT JOIN (
-    SELECT morder_no, create_time AS checktime
-    FROM (
-        SELECT morder_no, create_time,
-               ROW_NUMBER() OVER (PARTITION BY morder_no ORDER BY create_time DESC) AS rn
-        FROM b_examine_result
-    ) ranked
-    WHERE rn = 1
-) exm ON exm.morder_no = a.WorkOrd
-
--- 修改后(MySQL窗口函数)
-LEFT JOIN (
-    SELECT morder_no, create_time AS checktime,
-           ROW_NUMBER() OVER (PARTITION BY morder_no ORDER BY create_time DESC) AS rn
-    FROM b_examine_result
-) exm ON exm.morder_no = a.WorkOrd AND exm.rn = 1
-```
-
-### 2. 修复前端页面API调用 (ProductionSchedule.vue)
-**文件**: `yudao-ui/yudao-ui-admin-vue3/src/views/jiaohuo/ProductionSchedule.vue`
-
-**修改内容**:
-1. **修改API导入**:
-   ```javascript
-   // 修改前
-   import { 
-     getProductionScheduleList, 
-     closeWorkOrders, 
-     generateProductionSchedule, 
-     syncMaterialRequirement,
-     syncProcessRoute,
-     setWorkOrderUrgent
-   } from '@/api/jiaohuo/production'
-   
-   // 修改后
-   import { 
-     getWorkOrderSchedulePage,
-     closeWorkOrders,
-     productionSchedule,
-     syncMaterialRequirement,
-     syncRouting,
-     setUrgent
-   } from '@/api/product/workorderSchedule'
-   ```
-
-2. **修改查询方法**:
-   - 使用 `getWorkOrderSchedulePage` 替代 `getProductionScheduleList`
-   - 参数名改为小驼峰格式: `workOrd`, `itemNum`, `status`
-   - 使用 `pageNo` 和 `pageSize` 参数
-
-3. **修改字段名**:
-   - 搜索表单字段: `WorkOrd` → `workOrd`, `ItemNum` → `itemNum`, `Status` → `status`
-   - 表格列字段: 所有大驼峰改为小驼峰(如 `Priority` → `priority`)
-   - 状态值: `'p'/'r'/'c'` → `'open'/'released'/'closed'`
-
-4. **修改API调用**:
-   - `generateProductionSchedule` → `productionSchedule(domain)`
-   - `syncProcessRoute(workOrd)` → `syncRouting(id)`
-   - `setWorkOrderUrgent({workOrd, urgentLevel})` → `setUrgent({id, urgent})`
-
-5. **启用自动查询**:
-   ```javascript
-   // 修改前
-   // handleSearch()  // 注释掉
-   
-   // 修改后
-   handleSearch()  // 启用
-   ```
-
-### 3. 重新编译后端模块
-```bash
-mvn clean install -DskipTests -pl yudao-module-product -am
-```
-
-### 4. 重启后端服务
-```bash
-# 停止旧进程
-Get-Process -Name java | Stop-Process -Force
-
-# 启动新进程
-cd yudao-server
-mvn spring-boot:run -Dspring-boot.run.profiles=local
-```
-
-## 验证步骤
-
-1. **等待后端启动完成** (约1-2分钟)
-   - 访问 `http://localhost:48080/doc.html` 确认后端已启动
-
-2. **登录系统**
-   - 访问前端页面
-   - 使用管理员账号登录
-
-3. **测试工单工序排产页面**
-   - 点击菜单"工单工序排产"
-   - 应该能看到数据列表(如果数据库中有数据)
-   - 测试查询、分页等功能
-
-4. **检查浏览器控制台**
-   - 打开F12开发者工具
-   - 查看Network标签,确认API请求成功
-   - 查看Console标签,确认没有JavaScript错误
-
-## 注意事项
-
-1. **数据库数据**: 如果WorkOrdMaster表中没有数据或Status字段为空,列表将显示为空
-2. **权限配置**: 确保用户拥有 `product:workorder-schedule:query` 权限
-3. **Domain参数**: 生产排程和同步物料需求功能需要传入正确的domain参数
-4. **状态映射**: 后端返回的状态值是小写的 `open/released/closed`,前端需要正确映射显示文本
-
-## 相关文件
-
-### 后端文件
-- `yudao-module-product/src/main/resources/mapper/product/WorkOrderScheduleMapper.xml`
-- `yudao-module-product/src/main/java/cn/iocoder/yudao/module/product/controller/admin/workorder/WorkOrderScheduleController.java`
-- `yudao-module-product/src/main/java/cn/iocoder/yudao/module/product/service/impl/WorkOrderScheduleServiceImpl.java`
-- `yudao-module-product/src/main/java/cn/iocoder/yudao/module/product/dal/mysql/WorkOrderScheduleMapper.java`
-
-### 前端文件
-- `yudao-ui/yudao-ui-admin-vue3/src/views/jiaohuo/ProductionSchedule.vue`
-- `yudao-ui/yudao-ui-admin-vue3/src/api/product/workorderSchedule.ts`
-
-## 后续优化建议
-
-1. **统一命名规范**: 建议统一使用小驼峰命名,避免混用大小驼峰
-2. **Domain参数获取**: 从用户登录信息或系统配置中获取domain参数
-3. **错误处理**: 增强错误提示,区分不同类型的错误(网络错误、权限错误、数据错误等)
-4. **数据验证**: 添加前端表单验证,确保输入数据的有效性
-5. **页面整合**: 考虑是否需要保留两个工单排产页面(`product/WorkOrderSchedule.vue` 和 `jiaohuo/ProductionSchedule.vue`),建议统一使用一个

+ 0 - 126
rename-product-to-makeplan.ps1

@@ -1,126 +0,0 @@
-# Rename yudao-module-product to yudao-module-makeplan
-# Including folders, packages, API paths, and all references
-
-Write-Host "========================================" -ForegroundColor Cyan
-Write-Host "Starting module rename: product -> makeplan" -ForegroundColor Cyan
-Write-Host "========================================" -ForegroundColor Cyan
-
-# 1. Rename module folder
-Write-Host "`n[1/8] Renaming module folder..." -ForegroundColor Yellow
-if (Test-Path "yudao-module-product") {
-    Rename-Item -Path "yudao-module-product" -NewName "yudao-module-makeplan"
-    Write-Host "Module folder renamed successfully" -ForegroundColor Green
-} else {
-    Write-Host "yudao-module-product folder not found" -ForegroundColor Red
-    exit 1
-}
-
-# 2. Rename mapper folder
-Write-Host "`n[2/8] Renaming mapper folder..." -ForegroundColor Yellow
-if (Test-Path "mapper/product") {
-    Rename-Item -Path "mapper/product" -NewName "mapper/makeplan"
-    Write-Host "Mapper folder renamed successfully" -ForegroundColor Green
-}
-
-# 3. Rename Java package
-Write-Host "`n[3/8] Renaming Java package..." -ForegroundColor Yellow
-$javaPath = "yudao-module-makeplan/src/main/java/cn/iocoder/yudao/module"
-if (Test-Path "$javaPath/product") {
-    Rename-Item -Path "$javaPath/product" -NewName "makeplan"
-    Write-Host "Java package renamed successfully" -ForegroundColor Green
-}
-
-# 4. Update package references in Java files
-Write-Host "`n[4/8] Updating package references in Java files..." -ForegroundColor Yellow
-$javaFiles = Get-ChildItem -Path "yudao-module-makeplan" -Filter "*.java" -Recurse
-$count = 0
-foreach ($file in $javaFiles) {
-    $content = Get-Content $file.FullName -Raw -Encoding UTF8
-    $newContent = $content -replace 'cn\.iocoder\.yudao\.module\.product', 'cn.iocoder.yudao.module.makeplan'
-    if ($content -ne $newContent) {
-        Set-Content -Path $file.FullName -Value $newContent -Encoding UTF8 -NoNewline
-        $count++
-    }
-}
-Write-Host "Updated $count Java files" -ForegroundColor Green
-
-# 5. Update pom.xml files
-Write-Host "`n[5/8] Updating pom.xml files..." -ForegroundColor Yellow
-$pomFiles = @(
-    "pom.xml",
-    "yudao-module-makeplan/pom.xml"
-)
-$count = 0
-foreach ($pomFile in $pomFiles) {
-    if (Test-Path $pomFile) {
-        $content = Get-Content $pomFile -Raw -Encoding UTF8
-        $newContent = $content -replace 'yudao-module-product', 'yudao-module-makeplan'
-        $newContent = $newContent -replace '<artifactId>product</artifactId>', '<artifactId>makeplan</artifactId>'
-        $newContent = $newContent -replace '<module>yudao-module-product</module>', '<module>yudao-module-makeplan</module>'
-        if ($content -ne $newContent) {
-            Set-Content -Path $pomFile -Value $newContent -Encoding UTF8 -NoNewline
-            $count++
-        }
-    }
-}
-Write-Host "Updated $count pom.xml files" -ForegroundColor Green
-
-# 6. Update mapper XML files
-Write-Host "`n[6/8] Updating mapper XML files..." -ForegroundColor Yellow
-$xmlFiles = Get-ChildItem -Path "yudao-module-makeplan" -Filter "*.xml" -Recurse
-$count = 0
-foreach ($file in $xmlFiles) {
-    $content = Get-Content $file.FullName -Raw -Encoding UTF8
-    $newContent = $content -replace 'cn\.iocoder\.yudao\.module\.product', 'cn.iocoder.yudao.module.makeplan'
-    $newContent = $newContent -replace 'mapper/product/', 'mapper/makeplan/'
-    if ($content -ne $newContent) {
-        Set-Content -Path $file.FullName -Value $newContent -Encoding UTF8 -NoNewline
-        $count++
-    }
-}
-Write-Host "Updated $count XML files" -ForegroundColor Green
-
-# 7. Update frontend API paths
-Write-Host "`n[7/8] Updating frontend API paths..." -ForegroundColor Yellow
-# Rename frontend API folder
-if (Test-Path "yudao-ui/yudao-ui-admin-vue3/src/api/product") {
-    Rename-Item -Path "yudao-ui/yudao-ui-admin-vue3/src/api/product" -NewName "makeplan"
-}
-
-# Update frontend files
-$frontendFiles = Get-ChildItem -Path "yudao-ui/yudao-ui-admin-vue3/src" -Include "*.vue","*.ts","*.js" -Recurse
-$count = 0
-foreach ($file in $frontendFiles) {
-    $content = Get-Content $file.FullName -Raw -Encoding UTF8
-    $newContent = $content -replace '@/api/product/', '@/api/makeplan/'
-    $newContent = $newContent -replace '/product/workorder-schedule', '/makeplan/workorder-schedule'
-    if ($content -ne $newContent) {
-        Set-Content -Path $file.FullName -Value $newContent -Encoding UTF8 -NoNewline
-        $count++
-    }
-}
-Write-Host "Updated $count frontend files" -ForegroundColor Green
-
-# 8. Update application config files
-Write-Host "`n[8/8] Updating application config files..." -ForegroundColor Yellow
-$configFiles = Get-ChildItem -Path "yudao-server/src/main/resources" -Filter "application*.yaml" -Recurse
-$count = 0
-foreach ($file in $configFiles) {
-    $content = Get-Content $file.FullName -Raw -Encoding UTF8
-    $newContent = $content -replace 'yudao\.module\.product', 'yudao.module.makeplan'
-    $newContent = $newContent -replace 'mapper/product/', 'mapper/makeplan/'
-    if ($content -ne $newContent) {
-        Set-Content -Path $file.FullName -Value $newContent -Encoding UTF8 -NoNewline
-        $count++
-    }
-}
-Write-Host "Updated $count config files" -ForegroundColor Green
-
-Write-Host "`n========================================" -ForegroundColor Cyan
-Write-Host "Module rename completed!" -ForegroundColor Green
-Write-Host "========================================" -ForegroundColor Cyan
-Write-Host "`nNext steps:" -ForegroundColor Yellow
-Write-Host "1. Run: mvn clean install -DskipTests" -ForegroundColor White
-Write-Host "2. Start backend service" -ForegroundColor White
-Write-Host "3. Start frontend service" -ForegroundColor White
-Write-Host "4. Test work order schedule functionality" -ForegroundColor White

+ 0 - 91
restart-backend.ps1

@@ -1,91 +0,0 @@
-# 一键重启后端服务脚本
-
-Write-Host "=========================================" -ForegroundColor Cyan
-Write-Host "后端服务重启脚本" -ForegroundColor Cyan
-Write-Host "=========================================" -ForegroundColor Cyan
-Write-Host ""
-
-# 1. 停止现有的 Java 进程
-Write-Host "步骤 1: 停止现有的 Java 进程..." -ForegroundColor Yellow
-$javaProcesses = Get-Process | Where-Object {$_.ProcessName -like "*java*"}
-
-if ($javaProcesses) {
-    Write-Host "找到 $($javaProcesses.Count) 个 Java 进程" -ForegroundColor Green
-    foreach ($process in $javaProcesses) {
-        Write-Host "  - 进程 ID: $($process.Id), 启动时间: $($process.StartTime)" -ForegroundColor Gray
-    }
-    
-    $confirm = Read-Host "是否停止这些进程?(Y/N)"
-    if ($confirm -eq 'Y' -or $confirm -eq 'y') {
-        foreach ($process in $javaProcesses) {
-            try {
-                Stop-Process -Id $process.Id -Force
-                Write-Host "  ✓ 已停止进程 $($process.Id)" -ForegroundColor Green
-            } catch {
-                Write-Host "  ✗ 无法停止进程 $($process.Id): $_" -ForegroundColor Red
-            }
-        }
-    } else {
-        Write-Host "已取消停止进程" -ForegroundColor Yellow
-        exit 0
-    }
-} else {
-    Write-Host "未找到运行中的 Java 进程" -ForegroundColor Gray
-}
-
-Write-Host ""
-
-# 2. 清理并重新编译
-Write-Host "步骤 2: 清理并重新编译项目..." -ForegroundColor Yellow
-Write-Host "执行命令: mvn clean install -DskipTests" -ForegroundColor Gray
-Write-Host ""
-
-$compileConfirm = Read-Host "是否执行编译?这可能需要几分钟 (Y/N)"
-if ($compileConfirm -eq 'Y' -or $compileConfirm -eq 'y') {
-    try {
-        mvn clean install -DskipTests
-        if ($LASTEXITCODE -eq 0) {
-            Write-Host ""
-            Write-Host "✓ 编译成功!" -ForegroundColor Green
-        } else {
-            Write-Host ""
-            Write-Host "✗ 编译失败,请检查错误信息" -ForegroundColor Red
-            exit 1
-        }
-    } catch {
-        Write-Host "✗ 编译过程出错: $_" -ForegroundColor Red
-        exit 1
-    }
-} else {
-    Write-Host "已跳过编译步骤" -ForegroundColor Yellow
-}
-
-Write-Host ""
-
-# 3. 启动后端服务
-Write-Host "步骤 3: 启动后端服务..." -ForegroundColor Yellow
-Write-Host "执行命令: cd yudao-server && mvn spring-boot:run -Dspring-boot.run.profiles=local" -ForegroundColor Gray
-Write-Host ""
-
-$startConfirm = Read-Host "是否启动后端服务?(Y/N)"
-if ($startConfirm -eq 'Y' -or $startConfirm -eq 'y') {
-    Write-Host ""
-    Write-Host "正在启动后端服务..." -ForegroundColor Green
-    Write-Host "提示: 服务启动后,请访问 http://localhost:48080/doc.html 验证" -ForegroundColor Cyan
-    Write-Host ""
-    
-    Set-Location yudao-server
-    mvn spring-boot:run -Dspring-boot.run.profiles=local
-} else {
-    Write-Host ""
-    Write-Host "已跳过启动步骤" -ForegroundColor Yellow
-    Write-Host ""
-    Write-Host "手动启动命令:" -ForegroundColor Cyan
-    Write-Host "  cd yudao-server" -ForegroundColor Gray
-    Write-Host "  mvn spring-boot:run -Dspring-boot.run.profiles=local" -ForegroundColor Gray
-}
-
-Write-Host ""
-Write-Host "=========================================" -ForegroundColor Cyan
-Write-Host "完成" -ForegroundColor Cyan
-Write-Host "=========================================" -ForegroundColor Cyan

+ 0 - 10
start-backend-simple.ps1

@@ -1,10 +0,0 @@
-# 简单的后端启动脚本
-
-Write-Host "正在启动后端服务..." -ForegroundColor Green
-Write-Host "配置文件: local" -ForegroundColor Gray
-Write-Host ""
-
-Set-Location yudao-server
-
-# 使用 cmd 来执行 Maven 命令,避免 PowerShell 参数解析问题
-cmd /c "mvn spring-boot:run -Dspring-boot.run.profiles=local"

+ 0 - 75
test-workorder-api.sh

@@ -1,75 +0,0 @@
-#!/bin/bash
-
-# 工单排产 API 测试脚本
-# 用于快速验证后端服务是否正常
-
-echo "========================================="
-echo "工单排产模块 API 测试"
-echo "========================================="
-echo ""
-
-# 配置
-BASE_URL="http://localhost:48080"
-API_PREFIX="/admin-api/product/workorder-schedule"
-
-# 颜色定义
-GREEN='\033[0;32m'
-RED='\033[0;31m'
-YELLOW='\033[1;33m'
-NC='\033[0m' # No Color
-
-# 测试函数
-test_api() {
-    local endpoint=$1
-    local description=$2
-    
-    echo -e "${YELLOW}测试: ${description}${NC}"
-    echo "URL: ${BASE_URL}${API_PREFIX}${endpoint}"
-    
-    response=$(curl -s -w "\n%{http_code}" "${BASE_URL}${API_PREFIX}${endpoint}")
-    http_code=$(echo "$response" | tail -n1)
-    body=$(echo "$response" | sed '$d')
-    
-    if [ "$http_code" == "200" ]; then
-        echo -e "${GREEN}✓ 成功 (HTTP $http_code)${NC}"
-        echo "响应: ${body:0:200}..."
-    elif [ "$http_code" == "401" ] || [ "$http_code" == "403" ]; then
-        echo -e "${YELLOW}⚠ 需要认证 (HTTP $http_code)${NC}"
-        echo "提示: 这是正常的,说明接口存在但需要登录"
-    elif [ "$http_code" == "404" ]; then
-        echo -e "${RED}✗ 接口不存在 (HTTP $http_code)${NC}"
-        echo "提示: 后端服务可能未加载 product 模块"
-    else
-        echo -e "${RED}✗ 错误 (HTTP $http_code)${NC}"
-        echo "响应: $body"
-    fi
-    echo ""
-}
-
-# 检查后端服务是否运行
-echo "1. 检查后端服务..."
-if curl -s "${BASE_URL}/actuator/health" > /dev/null 2>&1; then
-    echo -e "${GREEN}✓ 后端服务正在运行${NC}"
-else
-    echo -e "${RED}✗ 后端服务未运行或无法访问${NC}"
-    echo "请先启动后端服务: cd yudao-server && mvn spring-boot:run"
-    exit 1
-fi
-echo ""
-
-# 测试 API 端点
-echo "2. 测试工单排产 API..."
-echo ""
-
-test_api "/page?pageNo=1&pageSize=20" "获取工单排产分页列表"
-
-# 总结
-echo "========================================="
-echo "测试完成"
-echo "========================================="
-echo ""
-echo "如果看到 '需要认证' 或 '成功',说明后端服务正常"
-echo "如果看到 '接口不存在',请执行以下步骤:"
-echo "  1. mvn clean install -DskipTests"
-echo "  2. 重启后端服务"
-echo ""

+ 0 - 52
test-workorder-data.md

@@ -1,52 +0,0 @@
-# 工单工序排产数据诊断
-
-## 问题描述
-工单工序排产列表页面不显示数据
-
-## 诊断步骤
-
-### 1. 检查API响应
-- API端点: `GET /admin-api/product/workorder-schedule/page?pageNo=1&pageSize=20`
-- 状态码: 200
-- 响应内容: 空
-
-### 2. 可能的原因
-
-#### 原因1: 需要认证Token
-- Controller使用了 `@PreAuthorize("@ss.hasPermission('product:workorder-schedule:query')")` 注解
-- 需要登录后获取token才能访问
-
-#### 原因2: 数据库中没有数据
-- 表名: `WorkOrdMaster`
-- 查询条件: `WHERE a.Status != ''`
-
-#### 原因3: MyBatis Plus分页配置问题
-- 自定义XML查询可能没有正确应用分页插件
-
-#### 原因4: 租户拦截器问题
-- Mapper使用了 `@InterceptorIgnore(tenantLine = "true")` 来忽略租户拦截
-- 但可能还有其他拦截器影响
-
-## 解决方案
-
-### 方案1: 前端登录后测试
-1. 启动前端: `cd yudao-ui/yudao-ui-admin-vue3 && pnpm dev`
-2. 访问: `http://localhost`
-3. 登录系统
-4. 访问工单工序排产页面
-5. 检查浏览器控制台和网络请求
-
-### 方案2: 使用Swagger测试
-1. 访问: `http://localhost:48080/doc.html`
-2. 先调用登录接口获取token
-3. 使用token调用工单排产接口
-
-### 方案3: 检查数据库
-直接查询数据库确认是否有数据:
-```sql
-SELECT COUNT(*) FROM WorkOrdMaster WHERE Status != '';
-SELECT * FROM WorkOrdMaster WHERE Status != '' LIMIT 10;
-```
-
-### 方案4: 添加调试日志
-在Service实现中添加日志,查看实际执行的SQL和返回结果

+ 0 - 84
test-workorder-schedule-api.sh

@@ -1,84 +0,0 @@
-#!/bin/bash
-
-# 工单排产 API 测试脚本
-# 使用方法: ./test-workorder-schedule-api.sh
-
-BASE_URL="http://localhost:48080"
-TOKEN="your_token_here"  # 需要先登录获取 token
-
-echo "=========================================="
-echo "工单排产 API 测试"
-echo "=========================================="
-
-# 1. 测试列表查询
-echo -e "\n1. 测试工单排产列表查询..."
-curl -X GET "${BASE_URL}/admin-api/product/work-order-schedule/page?pageNo=1&pageSize=10" \
-  -H "Authorization: Bearer ${TOKEN}" \
-  -H "Content-Type: application/json"
-
-# 2. 测试详情查询
-echo -e "\n\n2. 测试工单详情查询(ID=1)..."
-curl -X GET "${BASE_URL}/admin-api/product/work-order-schedule/get?id=1" \
-  -H "Authorization: Bearer ${TOKEN}" \
-  -H "Content-Type: application/json"
-
-# 3. 测试更新工单
-echo -e "\n\n3. 测试更新工单..."
-curl -X PUT "${BASE_URL}/admin-api/product/work-order-schedule/update" \
-  -H "Authorization: Bearer ${TOKEN}" \
-  -H "Content-Type: application/json" \
-  -d '{
-    "id": 1,
-    "remark": "测试更新备注"
-  }'
-
-# 4. 测试生产排产
-echo -e "\n\n4. 测试生产排产..."
-curl -X POST "${BASE_URL}/admin-api/product/work-order-schedule/production-schedule" \
-  -H "Authorization: Bearer ${TOKEN}" \
-  -H "Content-Type: application/json" \
-  -d '{
-    "ids": [1],
-    "planDate": "2026-02-10"
-  }'
-
-# 5. 测试同步物料
-echo -e "\n\n5. 测试同步物料..."
-curl -X POST "${BASE_URL}/admin-api/product/work-order-schedule/sync-material" \
-  -H "Authorization: Bearer ${TOKEN}" \
-  -H "Content-Type: application/json" \
-  -d '{
-    "workOrd": "WO202602040001"
-  }'
-
-# 6. 测试同步工艺路线
-echo -e "\n\n6. 测试同步工艺路线..."
-curl -X POST "${BASE_URL}/admin-api/product/work-order-schedule/sync-routing" \
-  -H "Authorization: Bearer ${TOKEN}" \
-  -H "Content-Type: application/json" \
-  -d '{
-    "workOrd": "WO202602040001"
-  }'
-
-# 7. 测试设置加急
-echo -e "\n\n7. 测试设置加急..."
-curl -X POST "${BASE_URL}/admin-api/product/work-order-schedule/set-urgent" \
-  -H "Authorization: Bearer ${TOKEN}" \
-  -H "Content-Type: application/json" \
-  -d '{
-    "ids": [1],
-    "urgent": 1
-  }'
-
-# 8. 测试关闭工单
-echo -e "\n\n8. 测试关闭工单..."
-curl -X POST "${BASE_URL}/admin-api/product/work-order-schedule/close" \
-  -H "Authorization: Bearer ${TOKEN}" \
-  -H "Content-Type: application/json" \
-  -d '{
-    "ids": [1]
-  }'
-
-echo -e "\n\n=========================================="
-echo "测试完成!"
-echo "=========================================="

+ 0 - 96
verify-module-rename.ps1

@@ -1,96 +0,0 @@
-# 模块重命名验证脚本(PowerShell 版本)
-# 用于验证模块重命名是否成功
-
-Write-Host "=========================================" -ForegroundColor Cyan
-Write-Host "模块重命名验证" -ForegroundColor Cyan
-Write-Host "=========================================" -ForegroundColor Cyan
-Write-Host ""
-
-# 检查计数
-$successCount = 0
-$failCount = 0
-
-# 检查函数
-function Check-Item {
-    param(
-        [string]$Description,
-        [bool]$Condition
-    )
-    
-    if ($Condition) {
-        Write-Host "✓ $Description" -ForegroundColor Green
-        $script:successCount++
-    } else {
-        Write-Host "✗ $Description" -ForegroundColor Red
-        $script:failCount++
-    }
-}
-
-Write-Host "1. 检查目录结构..." -ForegroundColor Yellow
-Write-Host ""
-
-# 检查新目录是否存在
-Check-Item "yudao-module-order 目录存在" (Test-Path "yudao-module-order")
-Check-Item "yudao-module-product 目录存在" (Test-Path "yudao-module-product")
-
-# 检查旧目录是否已删除
-Check-Item "yudao-order-server 目录已删除" (-not (Test-Path "yudao-order-server"))
-Check-Item "yudao-product-server 目录已删除" (-not (Test-Path "yudao-product-server"))
-
-Write-Host ""
-Write-Host "2. 检查 POM 文件配置..." -ForegroundColor Yellow
-Write-Host ""
-
-# 检查根 pom.xml
-$rootPom = Get-Content "pom.xml" -Raw
-Check-Item "根 pom.xml 包含新模块声明" ($rootPom -match "yudao-module-order" -and $rootPom -match "yudao-module-product")
-Check-Item "根 pom.xml 不包含旧模块声明" ($rootPom -notmatch "yudao-order-server" -and $rootPom -notmatch "yudao-product-server")
-
-# 检查 yudao-server/pom.xml
-$serverPom = Get-Content "yudao-server/pom.xml" -Raw
-Check-Item "yudao-server/pom.xml 包含新模块依赖" ($serverPom -match "yudao-module-order" -and $serverPom -match "yudao-module-product")
-Check-Item "yudao-server/pom.xml 不包含旧模块依赖" ($serverPom -notmatch "yudao-order-server" -and $serverPom -notmatch "yudao-product-server")
-
-# 检查模块自身的 pom.xml
-if (Test-Path "yudao-module-order/pom.xml") {
-    $orderPom = Get-Content "yudao-module-order/pom.xml" -Raw
-    Check-Item "yudao-module-order/pom.xml artifactId 正确" ($orderPom -match "<artifactId>yudao-module-order</artifactId>")
-}
-
-if (Test-Path "yudao-module-product/pom.xml") {
-    $productPom = Get-Content "yudao-module-product/pom.xml" -Raw
-    Check-Item "yudao-module-product/pom.xml artifactId 正确" ($productPom -match "<artifactId>yudao-module-product</artifactId>")
-}
-
-Write-Host ""
-Write-Host "3. 检查源代码目录..." -ForegroundColor Yellow
-Write-Host ""
-
-# 检查源代码目录结构
-Check-Item "订单模块源代码目录存在" (Test-Path "yudao-module-order/src/main/java/cn/iocoder/yudao/module/order")
-Check-Item "生产模块源代码目录存在" (Test-Path "yudao-module-product/src/main/java/cn/iocoder/yudao/module/product")
-
-Write-Host ""
-Write-Host "=========================================" -ForegroundColor Cyan
-Write-Host "验证结果" -ForegroundColor Cyan
-Write-Host "=========================================" -ForegroundColor Cyan
-Write-Host ""
-Write-Host "成功: $successCount 项" -ForegroundColor Green
-Write-Host "失败: $failCount 项" -ForegroundColor Red
-Write-Host ""
-
-if ($failCount -eq 0) {
-    Write-Host "✓ 模块重命名验证通过!" -ForegroundColor Green
-    Write-Host ""
-    Write-Host "下一步操作:" -ForegroundColor Yellow
-    Write-Host "  1. mvn clean install -DskipTests"
-    Write-Host "  2. 在 IDE 中刷新 Maven 项目"
-    Write-Host "  3. 重启后端服务"
-    exit 0
-}
-else {
-    Write-Host "✗ 模块重命名验证失败,请检查上述失败项" -ForegroundColor Red
-    Write-Host ""
-    Write-Host "请参考 MODULE_RENAME_SUMMARY.md 文档"
-    exit 1
-}

+ 0 - 150
verify-module-rename.sh

@@ -1,150 +0,0 @@
-#!/bin/bash
-
-# 模块重命名验证脚本
-# 用于验证模块重命名是否成功
-
-echo "========================================="
-echo "模块重命名验证"
-echo "========================================="
-echo ""
-
-# 颜色定义
-GREEN='\033[0;32m'
-RED='\033[0;31m'
-YELLOW='\033[1;33m'
-NC='\033[0m' # No Color
-
-# 检查计数
-success_count=0
-fail_count=0
-
-# 检查函数
-check_item() {
-    local description=$1
-    local condition=$2
-    
-    if [ "$condition" == "true" ]; then
-        echo -e "${GREEN}✓${NC} $description"
-        ((success_count++))
-    else
-        echo -e "${RED}✗${NC} $description"
-        ((fail_count++))
-    fi
-}
-
-echo "1. 检查目录结构..."
-echo ""
-
-# 检查新目录是否存在
-if [ -d "yudao-module-order" ]; then
-    check_item "yudao-module-order 目录存在" "true"
-else
-    check_item "yudao-module-order 目录存在" "false"
-fi
-
-if [ -d "yudao-module-product" ]; then
-    check_item "yudao-module-product 目录存在" "true"
-else
-    check_item "yudao-module-product 目录存在" "false"
-fi
-
-# 检查旧目录是否已删除
-if [ ! -d "yudao-order-server" ]; then
-    check_item "yudao-order-server 目录已删除" "true"
-else
-    check_item "yudao-order-server 目录已删除" "false"
-fi
-
-if [ ! -d "yudao-product-server" ]; then
-    check_item "yudao-product-server 目录已删除" "true"
-else
-    check_item "yudao-product-server 目录已删除" "false"
-fi
-
-echo ""
-echo "2. 检查 POM 文件配置..."
-echo ""
-
-# 检查根 pom.xml
-if grep -q "yudao-module-order" pom.xml && grep -q "yudao-module-product" pom.xml; then
-    check_item "根 pom.xml 包含新模块声明" "true"
-else
-    check_item "根 pom.xml 包含新模块声明" "false"
-fi
-
-if ! grep -q "yudao-order-server" pom.xml && ! grep -q "yudao-product-server" pom.xml; then
-    check_item "根 pom.xml 不包含旧模块声明" "true"
-else
-    check_item "根 pom.xml 不包含旧模块声明" "false"
-fi
-
-# 检查 yudao-server/pom.xml
-if grep -q "yudao-module-order" yudao-server/pom.xml && grep -q "yudao-module-product" yudao-server/pom.xml; then
-    check_item "yudao-server/pom.xml 包含新模块依赖" "true"
-else
-    check_item "yudao-server/pom.xml 包含新模块依赖" "false"
-fi
-
-if ! grep -q "yudao-order-server" yudao-server/pom.xml && ! grep -q "yudao-product-server" yudao-server/pom.xml; then
-    check_item "yudao-server/pom.xml 不包含旧模块依赖" "true"
-else
-    check_item "yudao-server/pom.xml 不包含旧模块依赖" "false"
-fi
-
-# 检查模块自身的 pom.xml
-if [ -f "yudao-module-order/pom.xml" ]; then
-    if grep -q "<artifactId>yudao-module-order</artifactId>" yudao-module-order/pom.xml; then
-        check_item "yudao-module-order/pom.xml artifactId 正确" "true"
-    else
-        check_item "yudao-module-order/pom.xml artifactId 正确" "false"
-    fi
-fi
-
-if [ -f "yudao-module-product/pom.xml" ]; then
-    if grep -q "<artifactId>yudao-module-product</artifactId>" yudao-module-product/pom.xml; then
-        check_item "yudao-module-product/pom.xml artifactId 正确" "true"
-    else
-        check_item "yudao-module-product/pom.xml artifactId 正确" "false"
-    fi
-fi
-
-echo ""
-echo "3. 检查源代码目录..."
-echo ""
-
-# 检查源代码目录结构
-if [ -d "yudao-module-order/src/main/java/cn/iocoder/yudao/module/order" ]; then
-    check_item "订单模块源代码目录存在" "true"
-else
-    check_item "订单模块源代码目录存在" "false"
-fi
-
-if [ -d "yudao-module-product/src/main/java/cn/iocoder/yudao/module/product" ]; then
-    check_item "生产模块源代码目录存在" "true"
-else
-    check_item "生产模块源代码目录存在" "false"
-fi
-
-echo ""
-echo "========================================="
-echo "验证结果"
-echo "========================================="
-echo ""
-echo -e "成功: ${GREEN}${success_count}${NC} 项"
-echo -e "失败: ${RED}${fail_count}${NC} 项"
-echo ""
-
-if [ $fail_count -eq 0 ]; then
-    echo -e "${GREEN}✓ 模块重命名验证通过!${NC}"
-    echo ""
-    echo "下一步操作:"
-    echo "  1. mvn clean install -DskipTests"
-    echo "  2. 在 IDE 中刷新 Maven 项目"
-    echo "  3. 重启后端服务"
-    exit 0
-else
-    echo -e "${RED}✗ 模块重命名验证失败,请检查上述失败项${NC}"
-    echo ""
-    echo "请参考 MODULE_RENAME_SUMMARY.md 文档"
-    exit 1
-fi