From f31db99e67cc3e4a4092b4957af1076b634e6b48 Mon Sep 17 00:00:00 2001 From: CZT <czt18638530771@163.com> Date: 星期五, 15 十二月 2023 17:23:55 +0800 Subject: [PATCH] 修复粮情数据转换 --- src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1302.java | 71 +++++++++++++++++++++++++---------- 1 files changed, 50 insertions(+), 21 deletions(-) diff --git a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1302.java b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1302.java index b2ddf0b..b093d1d 100644 --- a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1302.java +++ b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1302.java @@ -24,7 +24,7 @@ /** * 娓╂箍搴︽娴嬫暟鎹悓姝� * - * @author chen + * @author czt * @date 2022-09-07 14:41 */ @Slf4j @@ -48,7 +48,7 @@ * @param start 璧峰鏃堕棿 * @param end 鎴鏃堕棿 */ - public void syncData(String deptId, Date start, Date end) { + public void syncData(String kqdm, String deptId, Date start, Date end) { log.info("-------------1302鎺ュ彛鏁版嵁寮�濮嬪悓姝�------------------"); //鍚屾鏁版嵁锛屽彧璁板綍澶辫触鐨勪俊鎭� @@ -61,8 +61,8 @@ apiLog.setId(ContextUtil.getUUID()); try { List<Fz40Grain> list = fzzySync1302Rep.findByReceiveDate(start, end); - log.info(DateUtils.format("yyyy-MM-dd HH:mm:ss",start)); - log.info(DateUtils.format("yyyy-MM-dd HH:mm:ss",end)); + log.info(DateUtils.format("yyyy-MM-dd HH:mm:ss", start)); + log.info(DateUtils.format("yyyy-MM-dd HH:mm:ss", end)); if (null == list || list.isEmpty()) { log.info("1302---鍚屾鏁版嵁锛氭病鏈夋煡璇㈠埌闇�瑕佸悓姝ョ殑鏁版嵁"); return; @@ -81,47 +81,66 @@ //鐢辫揣浣嶄唬鐮�+妫�娴嬫棩鏈� 锛坹yyyMMdd锛� +4 浣嶉『搴忓彿缁勬垚 --2019 1128 0819 api1302 = new Api1302(); - //api1302.setWsdjcdh(api1105.getHwdm() + DateFormatUtils.format(grain.getReceiveDate(), "yyyyMMdd") + String.valueOf(index).substring(1)); api1302.setWsdjcdh(api1105.getHwdm() + fz40Grain.getBatchId()); api1302.setJcsj(fz40Grain.getReceiveDate()); api1302.setHwdm(api1105.getHwdm()); - api1302.setCfww(fz40Grain.getTempOut() == null ? 0.00: fz40Grain.getTempOut()); - if(null == fz40Grain.getHumidityOut() || fz40Grain.getHumidityOut() < 0){ + api1302.setCfww(fz40Grain.getTempOut() == null ? 0.00 : fz40Grain.getTempOut()); + if (null == fz40Grain.getHumidityOut() || fz40Grain.getHumidityOut() < 0) { api1302.setCfws(-1); - }else { + } else { api1302.setCfws(fz40Grain.getHumidityOut()); } - api1302.setCfnw(fz40Grain.getTempIn() == null ? 0.00: fz40Grain.getTempIn()); - if(null == fz40Grain.getHumidityIn() || fz40Grain.getHumidityIn() < 0){ + api1302.setCfnw(fz40Grain.getTempIn() == null ? 0.00 : fz40Grain.getTempIn()); + if (null == fz40Grain.getHumidityIn() || fz40Grain.getHumidityIn() < 0) { api1302.setCfns(-1); - }else { + } else { api1302.setCfns(fz40Grain.getHumidityIn()); } - api1302.setLszgw(fz40Grain.getTempMax() == null ? 0.00: fz40Grain.getTempMax()); - api1302.setLspjw(fz40Grain.getTempAve() == null ? 0.00: fz40Grain.getTempAve()); - api1302.setLszdw(fz40Grain.getTempMin() == null ? 0.00: fz40Grain.getTempMin()); + api1302.setLszgw(fz40Grain.getTempMax() == null ? 0.00 : fz40Grain.getTempMax()); + api1302.setLspjw(fz40Grain.getTempAve() == null ? 0.00 : fz40Grain.getTempAve()); + api1302.setLszdw(fz40Grain.getTempMin() == null ? 0.00 : fz40Grain.getTempMin()); + + //鍒ゆ柇绮鏈�浣庢俯銆佸钩鍧囨俯銆佹渶楂樻俯鏄惁绗﹀悎閫昏緫 + if (api1302.getLszdw() >= api1302.getLspjw()) { + continue; + } + if (api1302.getLspjw() >= api1302.getLszgw()) { + continue; + } //娓╁害闆嗗悎 if (StringUtils.isEmpty(fz40Grain.getCableCir())) { api1302.setLswdzjh(getTempPointList1(fz40Grain.getPoints(), fz40Grain.getCable())); api1302.setLssdzjh(getHumPointList1(fz40Grain.getPoints(), fz40Grain.getCable())); + if(StringUtils.isEmpty(api1302.getLswdzjh())){ + continue; + } + if(StringUtils.isEmpty(api1302.getLssdzjh())){ + continue; + } } else { api1302.setLswdzjh(getTempPointList2(fz40Grain.getPoints(), fz40Grain.getCable(), fz40Grain.getCableCir())); api1302.setLssdzjh(getHumPointList2(fz40Grain.getPoints(), fz40Grain.getCable(), fz40Grain.getCableCir())); + if(StringUtils.isEmpty(api1302.getLswdzjh())){ + continue; + } + if(StringUtils.isEmpty(api1302.getLssdzjh())){ + continue; + } } - api1302.setZhgxsj(syncTime); + api1302.setZhgxsj(new Date()); api1302.setBizId(fz40Grain.getBatchId()); api1302.setKqdm(api1105.getKqdm()); api1302.setSyncTime(syncTime); api1302List = api1302Rep.getDataByWsdjcdh(api1302.getWsdjcdh()); - if(null == api1302List || api1302List.isEmpty()){ + if (null == api1302List || api1302List.isEmpty()) { api1302.setCzbz(Constant.CZBZ_I); - }else { + } else { api1302.setCzbz(api1302List.get(0).getCzbz()); } log.info("1302---鍚屾鏁版嵁锛�" + api1302.toString()); @@ -136,12 +155,19 @@ } + public static void main(String[] args) { + String point = "31.8,20.0,15.1,18.6,28.2,14.3,11.3,16.1,28.1,15.6,13.3,18.4,28.8,16.6,10.2,14.4,27.8,14.3,10.8,16.0,27.5,14.5,11.7,17.1,26.5,13.6,10.1,15.0,29.7,17.4,13.8,17.8,29.7,18.6,15.0,18.6,26.4,13.5,9.2,13.1,27.6,11.8,8.9,13.5,28.1,12.0,8.6,12.8,27.8,11.6,7.6,12.4,26.1,10.8,7.5,12.6,27.8,10.3,7.1,12.0,26.1,11.3,8.5,12.7,28.6,16.9,12.9,17.7,29.1,12.3,8.8,12.1,27.4,11.9,8.6,12.8,29.0,11.5,7.6,11.1,26.9,10.2,8.0,12.7,27.0,9.6,7.7,13.5,26.7,9.5,7.1,12.3,26.3,10.7,8.4,13.4,27.6,15.9,11.5,15.8,28.7,12.6,8.7,12.2,28.1,12.2,8.8,12.5,30.3,11.9,8.0,12.0,27.9,11.1,7.8,11.5,26.3,10.1,7.8,12.0,27.2,10.5,6.9,11.1,27.1,11.6,9.5,13.6,27.4,14.8,10.7,16.6,27.7,12.4,9.1,13.0,27.7,13.2,9.0,12.8,27.5,12.1,8.1,12.6,26.6,11.8,7.3,12.3,26.8,10.5,8.0,13.3,26.3,11.0,7.6,12.5,26.1,10.6,8.5,13.5,29.8,21.3,15.5,17.8,28.3,18.2,11.6,12.8,29.4,17.4,13.0,16.1,28.4,22.3,14.6,15.4,28.7,17.5,11.8,15.2,26.5,14.6,10.9,14.8,27.8,15.3,10.3,14.8,27.6,16.7,13.6,17.4"; + String cable = "4-6-8"; + String tempPointList1 = getTempPointList1(point, cable); + System.out.println(tempPointList1); + } + /** * 鑾峰彇骞虫柟浠撶殑娓╁害鍊奸泦鍚堬紝鏍煎紡锛氭俯搴﹀��,灞傛暟,琛屾暟,鍒楁暟|娓╁害鍊�,灞傛暟,琛屾暟,鍒楁暟|娓╁害鍊�,灞傛暟,琛屾暟,鍒楁暟 * * @return */ - private String getTempPointList1(String point, String cable) { + private static String getTempPointList1(String point, String cable) { String[] cab = cable.split("-"); int c = Integer.valueOf(cab[0]); int h = Integer.valueOf(cab[1]); @@ -149,10 +175,13 @@ String[] points = point.split(","); String result = ""; + if (c * h * l > points.length) { + return result; + } for (int i = 1; i <= l; i++) { for (int j = 1; j <= h; j++) { for (int z = 1; z <= c; z++) { - result += ("|" + points[(i * j - 1) * c + z - 1] + "," + z + "," + j + "," + i); + result += ("|" + points[((i-1)*h+j-1)*c + z -1] + "," + z + "," + j + "," + i); } } } @@ -201,7 +230,7 @@ int h = Integer.valueOf(cab[1]); int l = Integer.valueOf(cab[2]); - // String[] points = point.split(","); + // String[] points = point.split(","); String result = ""; for (int i = 1; i <= l; i++) { for (int j = 1; j <= h; j++) { @@ -228,7 +257,7 @@ int g1 = 1; //鍦堣捣濮嬫牴鏁� int g2 = 0; //鍦堟埅姝㈡牴鏁� - // String[] points = point.split(","); + // String[] points = point.split(","); String result = ""; for (int i = 1; i <= q; i++) { g1 += g2; -- Gitblit v1.9.3