From c19de84fa332a00c651f28e3a52292fd14f143a1 Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期二, 23 九月 2025 17:30:07 +0800
Subject: [PATCH] 陆常丽反应软件系统财务对账时而数据不准确,分析源码,找到bug原因是,财务对账统计只有用户点击后才会触发统计功能,把历史上及当天进行了统计,如果当天统计时未下班,例如是中午触发统计了,而下午又进行了充值售水,但下班后未再点击触发对账统计,那么今天的对账统计完成了但数据不对。编写自动任务,在下半夜进行对账统计。
---
pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/IntakeSv.java | 136 ++++++++++++---------------------------------
1 files changed, 36 insertions(+), 100 deletions(-)
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/IntakeSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/IntakeSv.java
index d36d3ce..7e22357 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/IntakeSv.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/IntakeSv.java
@@ -6,13 +6,14 @@
import com.dy.common.multiDataSource.DataSourceContext;
import com.dy.common.mw.protocol.Command;
import com.dy.common.webUtil.BaseResponse;
+import com.dy.common.webUtil.BaseResponseUtils;
import com.dy.common.webUtil.QueryResultVo;
import com.dy.pipIrrGlobal.config.DingTalk;
import com.dy.pipIrrGlobal.daoPr.PrDivideMapper;
import com.dy.pipIrrGlobal.daoPr.PrIntakeMapper;
import com.dy.pipIrrGlobal.pojoPr.PrIntake;
-import com.dy.pipIrrGlobal.voPr.VoIntake;
-import com.dy.pipIrrGlobal.voPr.VoOnLineIntake;
+import com.dy.pipIrrGlobal.voPr.*;
+import com.dy.pipIrrProject.intake.qo.QoIntake;
import lombok.extern.slf4j.Slf4j;
import org.apache.dubbo.common.utils.PojoUtils;
import org.springframework.beans.factory.annotation.Autowired;
@@ -26,7 +27,9 @@
import org.springframework.web.client.RestTemplate;
import org.springframework.web.util.UriComponentsBuilder;
-import java.util.*;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
/**
* @author wuzeyu
@@ -106,32 +109,19 @@
return prIntakeMapper.getSupperByVillageId(vaId);
}
- /**
- * 淇濆瓨淇敼瀹炰綋
- *
- * @param po 瀹炰綋
- * @return 鏁伴噺
- */
-
public int update(PrIntake po) {
- if (po.getTownId() == null || po.getTownId() == 0) {
- Long townId = getSupperByVillageId(po.getVillageId());
- po.setTownId(townId);
- }
- if (po.getCountyId() == null || po.getCountyId() == 0) {
- Long countyId = getSupperByVillageId(getSupperByVillageId(po.getVillageId()));
- po.setCountyId(countyId);
- }
+// if (po.getTownId() == null || po.getTownId() == 0) {
+// Long townId = getSupperByVillageId(po.getVillageId());
+// po.setTownId(townId);
+// }
+// if (po.getCountyId() == null || po.getCountyId() == 0) {
+// Long countyId = getSupperByVillageId(getSupperByVillageId(po.getVillageId()));
+// po.setCountyId(countyId);
+// }
return this.prIntakeMapper.updateByPrimaryKeySelective(po);
// return this.prIntakeMapper.updateByPrimaryKey(po);
}
- /**
- * 鏍规嵁鎸囧畾鏉′欢鑾峰彇鍙栨按鍙h褰�
- *
- * @param queryVo 鏌ヨ瑙嗗浘
- * @return 鍙栨按鍙h褰曞垪琛�
- */
public QueryResultVo<List<VoIntake>> getIntakes(QueryVo queryVo) {
Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo);
Long itemTotal = prIntakeMapper.getRecordCount(params);
@@ -144,76 +134,35 @@
return rsVo;
}
- /**
- * 鏍规嵁鎸囧畾鏉′欢瀵煎嚭鍙栨按鍙e垪琛�
- *
- * @param queryVo
- * @return
- */
public List<VoIntake> exportIntakes(QueryVo queryVo) {
Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo);
List<VoIntake> rsVo = prIntakeMapper.getIntakes(params);
return rsVo;
}
- /**
- * 寰楀埌鎵�鏈夊彇姘村彛
- *
- * @return 鎵�鏈夊彇姘村彛闆嗗悎
- */
- public QueryResultVo<List<PrIntake>> selectAll() {
- QueryResultVo<List<PrIntake>> rsVo = new QueryResultVo<>();
+ public QueryResultVo<List<VoAllIntake>> selectAll() {
+ QueryResultVo<List<VoAllIntake>> rsVo = new QueryResultVo<>();
rsVo.obj = this.prIntakeMapper.selectAll();
return rsVo;
}
- /**
- * 寰楀埌涓�涓彇姘村彛
- *
- * @param id 鍙栨按鍙D
- * @return 鍙栨按鍙e疄浣�
- */
- public PrIntake selectById(Long id) {
+ public VoAllIntake selectById(Long id) {
return this.prIntakeMapper.selectByPrimaryKey(id);
}
- /**
- * 閫昏緫鍒犻櫎瀹炰綋
- *
- * @param id 瀹炰綋ID
- * @return 鏁伴噺
- */
@Transactional
public int delete(Long id) {
return this.prIntakeMapper.deleteLogicById(id);
}
- /**
- * 鏍规嵁鍙栨按鍙g紪鍙疯幏鍙栨湭鍒犻櫎鐨勫彇姘村彛鏁伴噺
- *
- * @param intakeId
- * @return
- */
public Integer getRecordCountOfIntake(Long intakeId) {
return prIntakeMapper.getRecordCountOfIntake(intakeId);
}
- /**
- * 鏍规嵁鏉慖d鑾峰彇鍏ㄩ儴鍦板潃
- *
- * @param villageId 鏉慖d
- * @return address 鍏ㄩ儴浜旂骇鍦板潃
- */
public String getAddressByVillageId(long villageId) {
return prIntakeMapper.getAddressByVillageId(villageId);
}
- /**
- * 鏍规嵁鍖哄煙Id鑾峰彇鍖哄煙绛夌骇
- *
- * @param regionId 鍖哄煙Id
- * @return Level 鍖哄煙绛夌骇
- */
public int getLevelByRegionId(long regionId) {
return prIntakeMapper.getLevelByRegionId(regionId);
}
@@ -272,38 +221,24 @@
com.code = "LCD0001";
com.type = "innerCommand";
JSONObject response = (JSONObject) JSON.toJSON(sendCom2Mw(com));
- if (response != null && response.getString("code").equals("0001")) {
- //JSONObject attachment = response.getJSONObject("content").getJSONObject("attachment").getJSONObject("onLineMap");
- JSONObject attachment = response.getJSONObject("content").getJSONObject("attachment");
- JSONArray jsonArray = new JSONArray();
+ JSONArray jsonArray = new JSONArray();
+ if (response != null && response.getString("code").equals("0001")) {
+ JSONObject attachment = response.getJSONObject("content").getJSONObject("attachment");
if(attachment != null) {
- //HashMap<String, Boolean> onLineMap = JSON.parseObject(attachment.toJSONString(), HashMap.class);
- //for (Map.Entry<String, Boolean> entry : onLineMap.entrySet()) {
- // JSONObject jsonObject = new JSONObject();
- // jsonObject.put("rtuAddr", entry.getKey());
- // jsonObject.put("isOnLine", entry.getValue());
- // jsonArray.add(jsonObject);
- //}
attachment.forEach((key, value) -> {
JSONObject jsonObject = new JSONObject();
jsonObject.put("rtuAddr", key);
jsonObject.put("isOnLine", value);
jsonArray.add(jsonObject);
-
});
}
- return prIntakeMapper.getUsedIntakes(jsonArray.toJSONString(), operator);
- } else {
- return new ArrayList<>();
+ //} else {
+ // return new ArrayList<>();
}
+ return prIntakeMapper.getUsedIntakes(jsonArray.toJSONString(), operator);
}
- /**
- * 鍙戦�佸懡浠�
- *
- * @return
- */
protected BaseResponse sendCom2Mw(Command com) {
String url = UriComponentsBuilder.fromUriString(comSendUrl)
.build()
@@ -317,29 +252,30 @@
} catch (Exception e) {
e.printStackTrace();
}
+
+ if(response == null) {
+ return BaseResponseUtils.buildErrorMsg("涓棿浠惰皟鐢ㄥけ璐�");
+ }
+
return response.getBody();
}
- /**
- * 鍙栨按鍙e悕绉版崲鍙栨按鍙D锛岄獙璇佹槸鍚﹂噸澶嶅悕绉颁娇鐢�
- *
- * @param intakeName
- * @return
- */
public List<Long> getIntakeIdsByName(String intakeName) {
return prIntakeMapper.getIntakeIdsByName(intakeName);
}
- /**
- * 鍙栨按鍙e悕绉版崲鍙栨按鍙D锛岄獙璇佹槸鍚﹂噸澶嶅悕绉颁娇鐢�
- *
- * @param intakeName
- * @return
- */
public List<Long> getIntakeIdByNameExcludeId(Long id, String intakeName) {
return prIntakeMapper.getIntakeIdByNameExcludeId(id, intakeName);
}
+ public int updateIntakeLngLat(IntakeUpdateLngLat po) {
+ return prIntakeMapper.updateByPrimaryKeySelective1(po);
+ }
+
+ public List<VoIntakeSimple> getFreeIntakes(QoIntake queryVo) {
+ Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo);
+ return prIntakeMapper.getFreeIntakes(params);
+ }
}
--
Gitblit v1.8.0