wlzboy
3 天以前 40a8157440e3b906da8f52e07d939d78c3f4c313
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
package com.ruoyi.system.controller;
 
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.system.service.ILegacyTransferSyncService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
 
/**
 * 任务同步控制器
 * 
 * @author ruoyi
 */
@RestController
@RequestMapping("/task")
public class TaskSyncController {
    
    private static final Logger log = LoggerFactory.getLogger(TaskSyncController.class);
    
    @Autowired
    private ILegacyTransferSyncService legacyTransferSyncService;
    
    /**
     * 从旧系统同步数据到新系统
     * 
     * @param serviceOrdID 服务单ID
     * @param dispatchOrdID 调度单ID
     * @return 同步结果
     */
    @PostMapping("/syncFromLegacySystem")
    public AjaxResult syncFromLegacySystem(@RequestBody SyncRequest request) {
        try {
            Long serviceOrdID = request.getServiceOrdID();
            Long dispatchOrdID = request.getDispatchOrdID();
            
            // 参数验证
            if (serviceOrdID == null || serviceOrdID <= 0) {
                return AjaxResult.error("服务单ID不能为空且必须大于0");
            }
            
            if (dispatchOrdID == null || dispatchOrdID <= 0) {
                return AjaxResult.error("调度单ID不能为空且必须大于0");
            }
            
            log.info("开始从旧系统同步数据到新系统: ServiceOrdID={}, DispatchOrdID={}", serviceOrdID, dispatchOrdID);
            
            // 调用同步服务
            boolean result = legacyTransferSyncService.syncSingleTransferOrder(serviceOrdID, dispatchOrdID);
            
            if (result) {
                log.info("从旧系统同步数据成功: ServiceOrdID={}, DispatchOrdID={}", serviceOrdID, dispatchOrdID);
                return AjaxResult.success("同步成功");
            } else {
                log.error("从旧系统同步数据失败: ServiceOrdID={}, DispatchOrdID={}", serviceOrdID, dispatchOrdID);
                return AjaxResult.error("同步失败");
            }
            
        } catch (Exception e) {
            log.error("从旧系统同步数据异常: ServiceOrdID={}, DispatchOrdID={}", 
                     request.getServiceOrdID(), request.getDispatchOrdID(), e);
            return AjaxResult.error("同步异常: " + e.getMessage());
        }
    }
    
    /**
     * 同步请求参数类
     */
    public static class SyncRequest {
        private Long serviceOrdID;
        private Long dispatchOrdID;
        
        public Long getServiceOrdID() {
            return serviceOrdID;
        }
        
        public void setServiceOrdID(Long serviceOrdID) {
            this.serviceOrdID = serviceOrdID;
        }
        
        public Long getDispatchOrdID() {
            return dispatchOrdID;
        }
        
        public void setDispatchOrdID(Long dispatchOrdID) {
            this.dispatchOrdID = dispatchOrdID;
        }
    }
}