huangjiayang
2025-04-21 2bdb234b82f18e09a1ab8fd9bd28b44fed9084be
aps-modules/aps-job/src/main/java/com/aps/job/service/impl/ApsWorkOrderProcessServiceImpl.java
@@ -185,8 +185,10 @@
                            apsWorkOrderProcess.setOrgCode(process.getString("OrgCode"));
                            if (existsId != null) {
                                apsWorkOrderProcess.setId(existsId);
                                apsWorkOrderProcess.setUpdateTime(DateUtils.getNowDate());
                                updateList.add(apsWorkOrderProcess);
                            } else {
                                apsWorkOrderProcess.setCreateTime(DateUtils.getNowDate());
                                addList.add(apsWorkOrderProcess);
                            }
                            if(!nowDocNo.equals(process.getString("DocNo"))){
@@ -235,26 +237,53 @@
    }
    @Override
    public void syncWorkOrderProcessData() {
    public void syncWorkOrderProcessData(String status, Integer pageSize) {
        try{
            //分页查询工单
            ApsWorkOrderJob apsWorkOrderJob = new ApsWorkOrderJob();
            apsWorkOrderJob.setProcessStatus("0");
            while (true){
                PageHelper.startPage(1, 100);
                List<ApsWorkOrderJob> pageList = apsWorkOrderJobMapper.selectApsWorkOrderJobList(apsWorkOrderJob);
                if(!pageList.isEmpty()){
                    long startTime = System.currentTimeMillis();
                    List<String> docNos = new ArrayList<>();
                    for (ApsWorkOrderJob apsWorkOrderJob1 : pageList){
                        docNos.add(apsWorkOrderJob1.getDocNo());
            if(status==null){
                status = "0";
            }
            if(pageSize==null){
                pageSize = 100;
            }
            apsWorkOrderJob.setProcessStatus(status);
            // 补查之前没有查到工序的工单
            if("2".equals(status)){
                int total = apsWorkOrderJobMapper.selectApsWorkOrderJobList(apsWorkOrderJob).size();
                int pages = total % pageSize == 0 ? total / pageSize : total / pageSize + 1;
                for (int i = 1; i <= pages; i++){
                    PageHelper.startPage(i, pageSize);
                    List<ApsWorkOrderJob> pageList = apsWorkOrderJobMapper.selectApsWorkOrderJobList(apsWorkOrderJob);
                    if(!pageList.isEmpty()){
                        long startTime = System.currentTimeMillis();
                        List<String> docNos = new ArrayList<>();
                        for (ApsWorkOrderJob apsWorkOrderJob1 : pageList){
                            docNos.add(apsWorkOrderJob1.getDocNo());
                        }
                        getWorkOrderProcessFromU9(docNos);
                        long endTime = System.currentTimeMillis(); // 记录结束时间
                        long duration = endTime - startTime; // 计算运行时间
                        System.out.println("运行时间:"+ duration +"毫秒");
                    }
                    getWorkOrderProcessFromU9(docNos);
                    long endTime = System.currentTimeMillis(); // 记录结束时间
                    long duration = endTime - startTime; // 计算运行时间
                    System.out.println("运行时间:"+ duration +"毫秒");
                }else{
                    break;
                }
            }else{
                while (true){
                    PageHelper.startPage(1, pageSize);
                    List<ApsWorkOrderJob> pageList = apsWorkOrderJobMapper.selectApsWorkOrderJobList(apsWorkOrderJob);
                    if(!pageList.isEmpty()){
                        long startTime = System.currentTimeMillis();
                        List<String> docNos = new ArrayList<>();
                        for (ApsWorkOrderJob apsWorkOrderJob1 : pageList){
                            docNos.add(apsWorkOrderJob1.getDocNo());
                        }
                        getWorkOrderProcessFromU9(docNos);
                        long endTime = System.currentTimeMillis(); // 记录结束时间
                        long duration = endTime - startTime; // 计算运行时间
                        System.out.println("运行时间:"+ duration +"毫秒");
                    }else{
                        break;
                    }
                }
            }
        }catch (Exception e){