From fb2826c8d58dd7e51a3a4fac7a2a11d1d13ebaa5 Mon Sep 17 00:00:00 2001 From: zhanghl <253316343@qq.com> Date: 星期五, 18 四月 2025 10:13:10 +0800 Subject: [PATCH] work——order 同步接口 --- aps-modules/aps-job/src/main/java/com/aps/job/service/impl/ApsWorkOrderJobServiceImpl.java | 101 ++++++++++++++++++++++++++++++-------------------- 1 files changed, 61 insertions(+), 40 deletions(-) diff --git a/aps-modules/aps-job/src/main/java/com/aps/job/service/impl/ApsWorkOrderJobServiceImpl.java b/aps-modules/aps-job/src/main/java/com/aps/job/service/impl/ApsWorkOrderJobServiceImpl.java index 2c23280..ca8dfd4 100644 --- a/aps-modules/aps-job/src/main/java/com/aps/job/service/impl/ApsWorkOrderJobServiceImpl.java +++ b/aps-modules/aps-job/src/main/java/com/aps/job/service/impl/ApsWorkOrderJobServiceImpl.java @@ -124,53 +124,74 @@ @Transactional @Override public void batchInsertApsWorkOrderJob(ApsWorkOrderJobParam param) { - HttpHeaders headers = new HttpHeaders(); headers.setContentType(MediaType.APPLICATION_JSON); - Integer PageIndex = 3; - Integer PageSize = 600; - Boolean continueFlag = true; - /* while (continueFlag){*/ + /*鏍规嵁鍙傛暟涓綋鍓嶉〉闈� 鍜� 瑕佺洰鏍囬〉闈� 杩涜寰幆*/ + for (int idx=param.getPageIndex(); idx<=param.getToPageIndex(); idx++){ + /*璁剧疆褰撳墠椤甸潰*/ + param.setPageIndex(idx); + ApsWorkOrderJobLog log = new ApsWorkOrderJobLog(); + String requestString = JSONObject.toJSONString(param); + HttpEntity<String> request = new HttpEntity<>(requestString, headers); + ResponseEntity<String> response = restTemplate.postForEntity(getWorkOrderUrl, request, String.class); + log.setRequestData(requestString); + log.setPageNum(Long.valueOf(param.getPageIndex())); + log.setPageCount(Long.valueOf(param.getPageSize())); + log.setCreateTime(DateUtils.getNowDate()); + log.setBizType("work_order"); + jobLogMapper.insertApsWorkOrderJobLog(log); + if (response.getStatusCode().is2xxSuccessful()) { + JSONObject responseBodyJson = JSONObject.parseObject(response.getBody()); + if ("200".equals(responseBodyJson.getString("status"))) { + JSONArray result = responseBodyJson.getJSONArray("data"); + if (result != null&& !result.isEmpty()) { + int ct= batchSave(param, result); + if(ct>0){ + log.setResult("ok save "+ct); + jobLogMapper.updateApsWorkOrderJobLog(log); + return; + }else{ - ApsWorkOrderJobLog log = new ApsWorkOrderJobLog(); - - String requestString = JSONObject.toJSONString(param); - HttpEntity<String> request = new HttpEntity<>(requestString, headers); - ResponseEntity<String> response = restTemplate.postForEntity(getWorkOrderUrl, request, String.class); - log.setRequestData(requestString); - - log.setPageNum(Long.valueOf(PageIndex)); - log.setPageCount(Long.valueOf(PageSize)); - log.setCreateTime(DateUtils.getNowDate()); - jobLogMapper.insertApsWorkOrderJobLog(log); - if (response.getStatusCode().is2xxSuccessful()) { - JSONObject responseBodyJson = JSONObject.parseObject(response.getBody()); - if ("200".equals(responseBodyJson.getString("status"))) { - JSONArray result = responseBodyJson.getJSONArray("data"); - if (result != null) { - List<ApsWorkOrderJob> jobs = new ArrayList<>(); - for (int i = 0; i < result.size(); i++) { - ApsWorkOrderJob order = result.getObject(i, ApsWorkOrderJob.class); - JSONObject jsonObject = result.getJSONObject(i); - order.setOrderId(jsonObject.get("ID").toString()); - order.setCreateTime(DateUtils.getNowDate()); - order.setPageIndex(i); - order.setPageNum(PageIndex); - order.setDelFlag("0"); - order.setProcessStatus("0"); - jobs.add(order); + log.setResult("ok save 0"); + jobLogMapper.updateApsWorkOrderJobLog(log); + return; + } + }else { + log.setResult("ok receive 0"); + jobLogMapper.updateApsWorkOrderJobLog(log); + return; } - apsWorkOrderJobMapper.batchInsertApsWorkOrderJob(jobs); + } else { + log.setResponseData(response.getBody()); + log.setResult("fail"); + jobLogMapper.updateApsWorkOrderJobLog(log); + return; } - log.setResult("success"); - }else{ + } else { log.setResponseData(response.getBody()); + log.setResult("fail"); + jobLogMapper.updateApsWorkOrderJobLog(log); + return; } + } - else { - log.setResponseData(response.getBody()); - log.setResult("request fail"); - } - jobLogMapper.updateApsWorkOrderJobLog(log); } + + @Transactional + public int batchSave(ApsWorkOrderJobParam param, JSONArray result) { + List<ApsWorkOrderJob> jobs = new ArrayList<>(); + for (int i = 0; i < result.size(); i++) { + ApsWorkOrderJob order = result.getObject(i, ApsWorkOrderJob.class); + JSONObject jsonObject = result.getJSONObject(i); + order.setOrderId(jsonObject.get("ID").toString()); + order.setCreateTime(DateUtils.getNowDate()); + order.setPageIndex(i); + order.setPageNum(param.getPageIndex()); + order.setDelFlag("0"); + order.setProcessStatus("0"); + jobs.add(order); + } + return apsWorkOrderJobMapper.batchInsertApsWorkOrderJob(jobs); + } + } -- Gitblit v1.9.3