From 05702adf7e0732f90176fd3f9c5f4afe8c8f29da Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期六, 19 十月 2024 11:22:03 +0800
Subject: [PATCH] Merge branch 'master' of http://8.140.179.55:20000/r/pipIrr-SV
---
pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealIntakeAmountDay.java | 88 ++++++++++++++++++++++++++++++++-----------
1 files changed, 65 insertions(+), 23 deletions(-)
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealIntakeAmountDay.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealIntakeAmountDay.java
index 07ecd63..290a31e 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealIntakeAmountDay.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealIntakeAmountDay.java
@@ -22,7 +22,7 @@
*/
public class TkDealIntakeAmountDay extends TaskSurpport {
- private static final Logger log = LogManager.getLogger(TkDealLoss.class.getName());
+ private static final Logger log = LogManager.getLogger(TkDealIntakeAmountDay.class.getName());
//绫籌D锛屼竴瀹氫笌Tree.xml閰嶇疆鏂囦欢涓厤缃竴鑷�
public static final String taskId = "TkDealIntakeAmountDay";
@@ -73,24 +73,40 @@
private void doDeal(DbSv sv, PrController controller, String rtuAddr, DataV1_0_1 dV1_0_1, UpDataVo dataVo) throws Exception {
RmIntakeAmountDayLast poLast = sv.getRmIntakeAmountLast(controller.getIntakeId());
if (poLast == null) {
- //鏁版嵁搴撲腑涓嶅瓨鍦ㄨ鍙栨按鍙g殑婕忔崯鏁版嵁
+ //鏁版嵁搴撲腑涓嶅瓨鍦ㄨ鍙栨按鍙g殑鏃ュ彇姘撮噺鏁版嵁
//棣栧厛鐢熸垚鏈�鏂版暟鎹強鍘嗗彶鏁版嵁锛屽苟鍏堜繚瀛�
poLast = this.newRmIntakeAmountLast(controller, rtuAddr, dV1_0_1, dataVo);
this.newAndSaveHistoryDataDeal(sv, controller, rtuAddr, dV1_0_1, dataVo, poLast);
sv.saveRmIntakeAmountLast(poLast);
} else {
if(DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataVo.rtuDt).before(poLast.rtuDtLast)){
- //RTU鏃堕挓鏃╀簬鏈湴RTU鏃堕挓锛屾槸琛ユ姤锛岃ˉ鎶ユ病娉曡绠楀彇姘村彛鏃ョ疮璁″彇姘撮噺锛屽洜涓洪噰鐢ㄧ殑鏄疮璁℃祦閲忕浉宸殑璁$畻鏂规硶
+ //RTU鏃堕挓鏃╀簬鏈湴RTU鏃堕挓锛屾槸琛ユ姤锛屼笉鐢ㄨˉ鎶ユ潵璁$畻鍙栨按鍙f棩绱鍙栨按閲忥紝鍥犱负閲囩敤鐨勬槸绱娴侀噺鐩稿樊鐨勮绠楁柟娉曪紝
+ //鍏跺疄琛ユ姤鐨勯噺鍊硷紝鍩轰簬鍓嶉潰涓婃姤鏁版嵁宸茬粡璁$畻鍖呭惈浜嗭紝鍙槸閲忓�煎綊缁撶殑鏃ユ湡涓嶆纭舰浜嗐��
}else if(DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataVo.rtuDt).equals(poLast.rtuDtLast)){
//RTU鏃堕挓绛変簬鏈湴RTU鏃堕挓锛岄噸澶嶄笂鎶ユ暟鎹紝涓嶈繘琛屼换浣曞鐞�
}else{
- //涓婅鏁版嵁涓殑鏃ユ湡鏃堕棿绗﹀悎鍙绠楃殑鏉′欢
+ //涓婅鏁版嵁涓殑鏃ユ湡鏃堕棿绗﹀悎璁$畻鐨勬潯浠�
if(!rtuAddr.equals(poLast.rtuAddrLast)){
- //鏇存崲浜嗘帶鍒跺櫒锛屽彧鏇存崲鎺у埗鍣ㄥ湴鍧�锛屼笉杩涜姘撮噺璁$畻
- poLast = this.updateRmIntakeAmountLastByControllerChange(poLast, controller, rtuAddr, dV1_0_1, dataVo);
- //鍥犱负涓婅鏁版嵁涓殑鏃ユ湡鏃堕棿鏄彲杩涜璁$畻鐨勶紝鎵�浠ユ柊鐢熸垚涓�涓巻鍙茶褰�
- this.newAndSaveHistoryDataDeal(sv, controller, rtuAddr, dV1_0_1, dataVo, poLast);
- sv.saveRmIntakeAmountLast(poLast);
+ //鏇存崲浜嗘帶鍒跺櫒锛屽鐞嗘柟娉曪細鍙洿鎹㈡帶鍒跺櫒鍦板潃锛屼笉杩涜姘撮噺璁$畻
+ //鍥犱负涓婅鏁版嵁涓殑鏃ユ湡鏃堕棿鏄彲杩涜璁$畻鐨�
+ if(DateTime.dateFrom_yyyy_MM_dd1(dV1_0_1.dt).equals(poLast.dt)){
+ //鍚屼竴澶╂暟鎹�
+ poLast = this.updateRmIntakeAmountLastByControllerChange(poLast, controller, rtuAddr, dV1_0_1, dataVo);
+ RmIntakeAmountDay poHistory = null ;
+ if(poLast.lastHistoryId != null){
+ poHistory = sv.getRmIntakeAmountDay(poLast.lastHistoryId) ;
+ }
+ if(poHistory == null){
+ this.newAndSaveHistoryDataDeal(sv, controller, rtuAddr, dV1_0_1, dataVo, poLast);
+ }else{
+ poHistory = this.updateRmIntakeAmountByControllerChange(poHistory, poLast, controller, rtuAddr, dV1_0_1, dataVo);
+ sv.updateRmIntakeAmountDay(poHistory);
+ }
+ }else{
+ //闈炲悓涓�澶╋紝鎵�浠ユ柊鐢熸垚涓�涓巻鍙茶褰�
+ poLast = this.updateRmIntakeAmountLastByControllerChange(poLast, controller, rtuAddr, dV1_0_1, dataVo);
+ this.newAndSaveHistoryDataDeal(sv, controller, rtuAddr, dV1_0_1, dataVo, poLast);
+ }
}else{
//鏈洿鎹㈡帶鍒跺櫒
if(DateTime.dateFrom_yyyy_MM_dd1(dV1_0_1.dt).equals(poLast.dt)){
@@ -106,17 +122,17 @@
poHistory = this.updateRmIntakeAmountBySameDateNewData(poHistory, poLast, controller, rtuAddr, dV1_0_1, dataVo);
sv.updateRmIntakeAmountDay(poHistory);
}
- sv.saveRmIntakeAmountLast(poLast);
}else if(DateTime.dateFrom_yyyy_MM_dd1(dV1_0_1.dt).after(poLast.dt)){
//鏂扮殑鏃ユ湡
poLast = this.updateRmIntakeAmountLastByNewDateNewData(poLast, controller, rtuAddr, dV1_0_1, dataVo);
this.newAndSaveHistoryDataDeal(sv, controller, rtuAddr, dV1_0_1, dataVo, poLast);
- sv.saveRmIntakeAmountLast(poLast);
}else{
//杩欑鎯呭喌涓嶅瓨鍦�
}
}
}
+ //鏇存柊鏈�鏂版暟鎹�
+ sv.updateRmIntakeAmountLast(poLast);
}
}
@@ -164,14 +180,13 @@
}else{
po.amount = 0.0D ;
}
- po.amount = lastPo==null?0.0D:lastPo.amount ;
po.totalAmountLast = cdData.totalAmount ;
return po ;
}
/**
- * 淇濆瓨鏂扮殑寮�闃�涓婃姤鍘嗗彶鏁版嵁璁板綍锛屽苟鎶奍D璧嬪�肩粰鏈�鏂拌褰曠殑 lastHistoryId
+ * 淇濆瓨鏂扮殑鍘嗗彶鏁版嵁璁板綍锛屽苟鎶奍D璧嬪�肩粰鏈�鏂拌褰曠殑 lastHistoryId
* @param sv
* @param controller
* @param rtuAddr
@@ -206,7 +221,7 @@
lastPo.dt = DateTime.dateFrom_yyyy_MM_dd1(dV1_0_1.dt);
lastPo.dtLast = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dV1_0_1.dt);
lastPo.rtuDtLast = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(cdData.rtuDt);
- //lastPo.amount = lastPo.amount ; //绱鍙栨按閲忎笉鍙�
+ //lastPo.amount = lastPo.amount ; //鏃ョ疮璁″彇姘撮噺涓嶅彉
lastPo.totalAmountLast = cdData.totalAmount ;
return lastPo ;
}
@@ -227,16 +242,19 @@
//lastPo.dt = DateTime.dateFrom_yyyy_MM_dd1(dV1_0_1.dt);//鏃ユ湡娌″彉
lastPo.dtLast = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dV1_0_1.dt);
lastPo.rtuDtLast = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(cdData.rtuDt);
- Double difference = cdData.totalAmount - lastPo.totalAmountLast ;
- if(difference > 0){
- lastPo.amount = difference;
+ Double added = cdData.totalAmount - lastPo.totalAmountLast ;
+ if(added > 0){
+ if(lastPo.amount == null){
+ lastPo.amount = added ;
+ }else{
+ lastPo.amount += added ;
+ }
}else{
- //po.amount = po.amount ; //绱鍙栨按閲忎笉鍙�
+ //po.amount = po.amount ; //鏃ョ疮璁″彇姘撮噺涓嶅彉
}
lastPo.totalAmountLast = cdData.totalAmount ;
return lastPo ;
}
-
/**
* 鏇存柊鏈�鏂拌褰�
@@ -254,14 +272,38 @@
lastPo.dt = DateTime.dateFrom_yyyy_MM_dd1(dV1_0_1.dt);//鏃ユ湡鍙樹簡
lastPo.dtLast = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dV1_0_1.dt);
lastPo.rtuDtLast = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(cdData.rtuDt);
- Double difference = cdData.totalAmount - lastPo.totalAmountLast ;
- if(difference > 0){
- lastPo.amount = difference;
+ Double added = cdData.totalAmount - lastPo.totalAmountLast ;
+ if(added > 0){
+ //鏂扮殑涓�澶╃殑澶勭悊鏂瑰紡涓庡悓涓�澶╃殑澶勭悊鏂瑰紡涓嶄竴鏍�
+ lastPo.amount = added;
}else{
lastPo.amount = 0.0D; //鏃ョ疮璁℃按閲忓綊0
}
lastPo.totalAmountLast = cdData.totalAmount ;
return lastPo ;
+ }
+
+ /**
+ * 鐢熸垚鏂扮殑鎺у埗鍣ㄦ紡鎹熸棩缁熻鏈�鏂拌褰�
+ * @param controller
+ * @param rtuAddr
+ * @param dV1_0_1
+ * @param cdData
+ * @return
+ * @throws Exception
+ */
+ private RmIntakeAmountDay updateRmIntakeAmountByControllerChange(RmIntakeAmountDay po, RmIntakeAmountDayLast lastPo, PrController controller, String rtuAddr, DataV1_0_1 dV1_0_1, UpDataVo cdData)throws Exception {
+ po.intakeId = controller==null?null:controller.getIntakeId();
+ po.controllerIdLast = controller==null?null:controller.getId();
+ po.rtuAddrLast = rtuAddr;
+ po.dt = lastPo.dt ;
+ po.dtLast = lastPo.dtLast;
+ po.rtuDtLast = lastPo.rtuDtLast;
+
+ po.amount = lastPo.amount ;
+ po.totalAmountLast = lastPo.totalAmountLast ;
+
+ return po ;
}
/**
@@ -281,7 +323,7 @@
po.dtLast = lastPo.dtLast;
po.rtuDtLast = lastPo.rtuDtLast;
- po.amount = lastPo.amount ;
+ po.amount = lastPo.amount ;//姝ゆ椂lastPo.amount宸茬粡澧炲姞涓婁簡澧為噺
po.totalAmountLast = lastPo.totalAmountLast ;
return po ;
--
Gitblit v1.8.0