From fbb90c31d56348ec3fcc49af49c66b19992f58df Mon Sep 17 00:00:00 2001 From: zhanghl <253316343@qq.com> Date: 星期五, 16 五月 2025 17:15:32 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into dev --- aps-modules/aps-job/src/main/java/com/aps/job/service/impl/ApsWorkOrderProcessServiceImpl.java | 59 ++++++++++++++--------------- aps-modules/aps-core/src/main/resources/mapper/core/ApsShopMapper.xml | 1 aps-modules/aps-core/src/main/resources/mapper/core/ApsStandardProcessRouteHeaderMapper.xml | 1 3 files changed, 29 insertions(+), 32 deletions(-) diff --git a/aps-modules/aps-core/src/main/resources/mapper/core/ApsShopMapper.xml b/aps-modules/aps-core/src/main/resources/mapper/core/ApsShopMapper.xml index c86e304..285b7df 100644 --- a/aps-modules/aps-core/src/main/resources/mapper/core/ApsShopMapper.xml +++ b/aps-modules/aps-core/src/main/resources/mapper/core/ApsShopMapper.xml @@ -27,7 +27,6 @@ <if test="shopCode != null and shopCode != ''"> and shop_code = #{shopCode}</if> <if test="plantCode != null and plantCode != ''"> and plant_code = #{plantCode}</if> <if test="status != null and status != ''"> and status = #{status}</if> - and status='1' </where> order by id asc </select> diff --git a/aps-modules/aps-core/src/main/resources/mapper/core/ApsStandardProcessRouteHeaderMapper.xml b/aps-modules/aps-core/src/main/resources/mapper/core/ApsStandardProcessRouteHeaderMapper.xml index 3bdcebe..7747fbe 100644 --- a/aps-modules/aps-core/src/main/resources/mapper/core/ApsStandardProcessRouteHeaderMapper.xml +++ b/aps-modules/aps-core/src/main/resources/mapper/core/ApsStandardProcessRouteHeaderMapper.xml @@ -36,7 +36,6 @@ <if test="endDate != null and endDate != ''"> and end_date = #{endDate}</if> <if test="orgCode != null and orgCode != ''"> and org_code = #{orgCode}</if> <if test="itemCode != null and itemCode != ''"> and item_code like '%' || #{itemCode} || '%'</if> - <if test="orgCode != null and orgCode != ''"> and org_code = #{orgCode}</if> and del_flag = '0' </where> ORDER BY version desc diff --git a/aps-modules/aps-job/src/main/java/com/aps/job/service/impl/ApsWorkOrderProcessServiceImpl.java b/aps-modules/aps-job/src/main/java/com/aps/job/service/impl/ApsWorkOrderProcessServiceImpl.java index 304e372..6653f41 100644 --- a/aps-modules/aps-job/src/main/java/com/aps/job/service/impl/ApsWorkOrderProcessServiceImpl.java +++ b/aps-modules/aps-job/src/main/java/com/aps/job/service/impl/ApsWorkOrderProcessServiceImpl.java @@ -133,7 +133,9 @@ @Override public void getWorkOrderProcessFromU9(List<String> docNos) throws Exception { - List<String> noProcessDocNos = docNos; + List<String> noProcessDocNos = new ArrayList<>(docNos); + List<String> haveProcessDocNos = new ArrayList<>(); + ApsWorkOrderJobLog apsWorkOrderJobLog = new ApsWorkOrderJobLog(); // 璁剧疆璇锋眰澶� HttpHeaders headers = new HttpHeaders(); headers.setContentType(MediaType.APPLICATION_JSON); @@ -151,13 +153,11 @@ ResponseEntity<String> response = restTemplate.postForEntity(u9WorkOrderProcessUrl, request, String.class); String responseBody = response.getBody(); JSONObject responseBodyJson = JSONObject.parseObject(responseBody); - ApsWorkOrderJobLog apsWorkOrderJobLog = new ApsWorkOrderJobLog(); apsWorkOrderJobLog.setRequestData(requestBody.toJSONString()); apsWorkOrderJobLog.setCreateTime(DateUtils.getNowDate()); apsWorkOrderJobLog.setBizType("work_order_process"); apsWorkOrderJobLog.setResult("SUCCESS"); apsWorkOrderJobLogService.insertApsWorkOrderJobLog(apsWorkOrderJobLog); - List<String> haveProcessDocNos = new ArrayList<>(); if (response.getStatusCode().is2xxSuccessful()) { if(!StringUtils.isEmpty(responseBody)){ if("200".equals(responseBodyJson.getString("status"))){ @@ -166,8 +166,8 @@ List<ApsWorkOrderProcess> addList = new ArrayList<>(); List<ApsWorkOrderProcess> updateList = new ArrayList<>(); String nowDocNo = null; - for (Object o : jsonArray) { - JSONObject process = (JSONObject) o; + for (int i = 0,size=jsonArray.size();i<size;i++) { + JSONObject process = jsonArray.getJSONObject(i); if (nowDocNo == null) { nowDocNo = process.getString("DocNo"); noProcessDocNos.remove(nowDocNo); @@ -204,9 +204,9 @@ apsWorkOrderProcess.setCreateTime(DateUtils.getNowDate()); addList.add(apsWorkOrderProcess); // } - if(!nowDocNo.equals(process.getString("DocNo"))){ + if(!nowDocNo.equals(process.getString("DocNo")) || i==size-1){ //鏇存柊宸ュ崟鍚屾宸ュ簭鐘舵�� - docNos.remove(nowDocNo); + noProcessDocNos.remove(nowDocNo); haveProcessDocNos.add(nowDocNo); nowDocNo = process.getString("DocNo"); } @@ -225,23 +225,6 @@ apsWorkOrderJobLogService.updateApsWorkOrderJobLog(apsWorkOrderJobLog); logger.info("銆怚NSERT銆戣幏鍙栧苟鎻掑叆U9宸ュ簭鎴愬姛锛併�愬伐鍗曞彿锛歿}銆�", docNos); } - Map<String, Object> param = new HashMap<>(); - param.put("status", "1"); - param.put("docNos", haveProcessDocNos); - apsWorkOrderJobMapper.updateApsWorkOrderJobPrccessStatus(param); - }else{ - if(!noProcessDocNos.isEmpty()){ - Map<String, Object> param = new HashMap<>(); - param.put("status", "2"); - param.put("docNos", noProcessDocNos); - apsWorkOrderJobMapper.updateApsWorkOrderJobPrccessStatus(param); - apsWorkOrderJobLog.setRequestData(requestBody.toJSONString()); - apsWorkOrderJobLog.setResponseData(response.getBody()); - apsWorkOrderJobLog.setResult("empty"); - apsWorkOrderJobLog.setUpdateTime(DateUtils.getNowDate()); - apsWorkOrderJobLogService.updateApsWorkOrderJobLog(apsWorkOrderJobLog); - } - break; } if(jsonArray.size()<1000){ break; @@ -265,11 +248,29 @@ throw new Exception("銆怑RROR銆戞煡璇9宸ュ簭澶辫触锛併�愬伐鍗曞彿锛歿"+ docNos +"}, 閿欒鐮侊細{"+ responseBodyJson.getString("status") +"}锛岄敊璇俊鎭細{"+ responseBodyJson.getString("message") +"}銆�"); } } + if(!haveProcessDocNos.isEmpty()){ + Map<String, Object> param = new HashMap<>(); + param.put("status", "1"); + param.put("docNos", haveProcessDocNos); + apsWorkOrderJobMapper.updateApsWorkOrderJobPrccessStatus(param); + } + if(!noProcessDocNos.isEmpty()){ + Map<String, Object> param = new HashMap<>(); + param.put("status", "2"); + param.put("docNos", noProcessDocNos); + apsWorkOrderJobMapper.updateApsWorkOrderJobPrccessStatus(param); + apsWorkOrderJobLog.setRequestData(noProcessDocNos.toString()); + apsWorkOrderJobLog.setResponseData(""); + apsWorkOrderJobLog.setResult("empty"); + apsWorkOrderJobLog.setUpdateTime(DateUtils.getNowDate()); + apsWorkOrderJobLogService.updateApsWorkOrderJobLog(apsWorkOrderJobLog); + } } @Override public void syncWorkOrderProcessData(String status, Integer pageSize) { try{ + Integer pageNum = 1; //鍒嗛〉鏌ヨ宸ュ崟 ApsWorkOrderJob apsWorkOrderJob = new ApsWorkOrderJob(); if("".equals(status)){ @@ -282,6 +283,7 @@ while (true){ PageHelper.startPage(1, pageSize); List<ApsWorkOrderJob> pageList = apsWorkOrderJobMapper.selectApsWorkOrderJobList(apsWorkOrderJob); + PageHelper.clearPage(); if(!pageList.isEmpty()){ long startTime = System.currentTimeMillis(); List<String> docNos = new ArrayList<>(); @@ -293,15 +295,14 @@ break; } lastDocNos = String.join(",", docNos); - long endTime = System.currentTimeMillis(); // 璁板綍缁撴潫鏃堕棿 - long duration = endTime - startTime; // 璁$畻杩愯鏃堕棿 - System.out.println("杩愯鏃堕棿锛�"+ duration +"姣"); } + pageNum++; } }else{ while (true){ PageHelper.startPage(1, pageSize); List<ApsWorkOrderJob> pageList = apsWorkOrderJobMapper.selectApsWorkOrderJobList(apsWorkOrderJob); + PageHelper.clearPage(); if(!pageList.isEmpty()){ long startTime = System.currentTimeMillis(); List<String> docNos = new ArrayList<>(); @@ -312,15 +313,13 @@ } if(!docNos.isEmpty()){ getWorkOrderProcessFromU9(docNos); - long endTime = System.currentTimeMillis(); // 璁板綍缁撴潫鏃堕棿 - long duration = endTime - startTime; // 璁$畻杩愯鏃堕棿 - System.out.println("杩愯鏃堕棿锛�"+ duration +"姣"); }else{ break; } }else{ break; } + pageNum++; } } }catch (Exception e){ -- Gitblit v1.9.3