From 823cbaa8e120a6fc2e72a4e62c06d375cc821562 Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期一, 15 一月 2024 17:24:02 +0800
Subject: [PATCH] 1、增加流浪控制器实体(和数据库表); 2、修改部分通信协议实现; 3、增加部分通信协议实现; 4、增加通信中间件RTU上行数据处理任务树部分节点。
---
pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/client/ClientSv.java | 192 ++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 187 insertions(+), 5 deletions(-)
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/client/ClientSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/client/ClientSv.java
index eb16e9d..a3f631b 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/client/ClientSv.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/client/ClientSv.java
@@ -5,13 +5,17 @@
import com.dy.pipIrrGlobal.daoSe.SeClientMapper;
import com.dy.pipIrrGlobal.pojoSe.SeClient;
import com.dy.pipIrrGlobal.voSe.VoClient;
+import com.dy.pipIrrGlobal.voSe.VoOperate;
+import com.dy.pipIrrGlobal.voSe.VoStatistics;
import lombok.extern.slf4j.Slf4j;
import org.apache.dubbo.common.utils.PojoUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import java.util.Optional;
/**
* @author ZhuBaoMin
@@ -31,22 +35,159 @@
/**
* 鏍规嵁鎸囧畾鏉′欢鑾峰彇鍐滄埛鏁版嵁
- * @param vo
+ * @param queryVo
* @return
*/
- public QueryResultVo<List<VoClient>> getClients(QueryVo vo){
- Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(vo) ;
+ public QueryResultVo<List<VoClient>> getClients(QueryVo queryVo){
+ Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo) ;
Long itemTotal = seClientMapper.getRecordCount(params);
QueryResultVo<List<VoClient>> rsVo = new QueryResultVo<>() ;
- rsVo.pageSize = vo.pageSize ;
- rsVo.pageCurr = vo.pageCurr ;
+ Integer pageCurr = 0;
+ Integer pageSize = 10000;
+ rsVo.pageCurr = 1;
+ rsVo.pageSize = 10000;
+ if(queryVo.pageSize != null && queryVo.pageCurr != null) {
+ rsVo.pageSize = queryVo.pageSize ;
+ rsVo.pageCurr = queryVo.pageCurr;
+ pageSize = queryVo.pageSize ;
+ pageCurr = (Integer.parseInt(params.get("pageCurr").toString()) - 1) * Integer.parseInt(params.get("pageSize").toString());
+ }
+ params.put("pageCurr", pageCurr);
+ params.put("pageSize", pageSize);
+
rsVo.calculateAndSet(itemTotal, params);
rsVo.obj = seClientMapper.getClients(params);
return rsVo ;
}
+ /**
+ * 鏍规嵁鎸囧畾鏉′欢鑾峰彇浜ゆ槗璁板綍
+ * @param vo
+ * @return
+ */
+ public Map getOperates(QueryOperate vo){
+ // 琛ラ綈鏌ヨ鏃堕棿
+ String operateTimeStart = vo.operateTimeStart;
+ String operateTimeStop = vo.operateTimeStop;
+ if(operateTimeStart != null) {
+ operateTimeStart = operateTimeStart + " 00:00:00";
+ vo.setOperateTimeStart(operateTimeStart);
+ }
+ if(operateTimeStop != null) {
+ operateTimeStop = operateTimeStop + " 23:59:59";
+ vo.setOperateTimeStop(operateTimeStop);
+ }
+
+ // 鐢熸垚鏌ヨ鍙傛暟
+ Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(vo) ;
+
+ // 鑾峰彇姹囨�荤殑璐按閲戦銆佽喘鍗¢噾棰�
+ Float money = 0f;
+ Float cardCost = 0f;
+ Map map_sum = Optional.ofNullable(seClientMapper.getSums(params)).orElse(new HashMap());
+ if(map_sum.size() > 0) {
+ money = Float.parseFloat(map_sum.get("money").toString());
+ cardCost = Float.parseFloat(map_sum.get("cardCost").toString());
+ }
+
+ // 鑾峰彇绗﹀悎鏉′欢鐨勮褰曟暟
+ Long itemTotal = seClientMapper.getOperateRecordCount(params);
+
+ Integer pageSize = vo.getPageSize();
+ // 璁$畻鎬婚〉鏁�
+ Integer pageTotal ;
+ pageTotal = (int)Math.ceil((itemTotal==null?0.0D:itemTotal.doubleValue())/pageSize);
+
+ // 鏍规嵁褰撳墠椤电爜鍙婃瘡椤垫暟閲忚绠楀亸绉婚噺
+ Integer pageCurr = (Integer.parseInt(params.get("pageCurr").toString()) - 1) * Integer.parseInt(params.get("pageSize").toString());
+ params.put("pageCurr", pageCurr);
+
+ List<VoOperate> lit = seClientMapper.getOperates(params);
+ Map map_record = new HashMap();
+ map_record.put("itemTotal", itemTotal);
+ map_record.put("pageCurr", vo.pageCurr);
+ map_record.put("pageSize", pageSize);
+ map_record.put("pageTotal", pageTotal);
+ map_record.put("list", lit);
+
+ Map map_result = new HashMap();
+ map_result.put("money", money);
+ map_result.put("cardCost", cardCost);
+ map_result.put("records", map_record);
+
+ return map_result;
+ }
+
+ /**
+ * 鏍规嵁鎸囧畾鏉′欢鑾峰彇缁熻璁板綍
+ * @param vo 浜ゆ槗姹囨�绘煡璇㈡潯浠�
+ * @return 浜ゆ槗姹囨�昏褰�
+ */
+ public Map getStatistics(QueryStatistic vo){
+ // 琛ラ綈鏌ヨ鏃堕棿
+ String operateTimeStart = vo.operateTimeStart;
+ String operateTimeStop = vo.operateTimeStop;
+ if(operateTimeStart != null) {
+ operateTimeStart = operateTimeStart + " 00:00:00";
+ vo.setOperateTimeStart(operateTimeStart);
+ }
+ if(operateTimeStop != null) {
+ operateTimeStop = operateTimeStop + " 23:59:59";
+ vo.setOperateTimeStop(operateTimeStop);
+ }
+
+ // 鐢熸垚鏌ヨ鍙傛暟
+ Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(vo) ;
+
+ // 鑾峰彇姹囨�荤殑浜ゆ槗绗旀暟銆佷氦鏄撻噾棰�
+ Integer count = 0;
+ Float money = 0f;
+ Map map_sum = Optional.ofNullable(seClientMapper.getStatisticSums(params)).orElse(new HashMap());
+ if(map_sum.size() > 0) {
+ count = Integer.parseInt(map_sum.get("count").toString());
+ money = Float.parseFloat(map_sum.get("money").toString());
+ }
+
+ // 鑾峰彇绗﹀悎鏉′欢鐨勮褰曟暟
+ Long itemTotal = seClientMapper.getStatisticRecordCount(params);
+
+ Integer pageSize = vo.getPageSize();
+ // 璁$畻鎬婚〉鏁�
+ Integer pageTotal ;
+ pageTotal = (int)Math.ceil((itemTotal==null?0.0D:itemTotal.doubleValue())/pageSize);
+
+ // 鏍规嵁褰撳墠椤电爜鍙婃瘡椤垫暟閲忚绠楀亸绉婚噺
+ Integer pageCurr = (Integer.parseInt(params.get("pageCurr").toString()) - 1) * Integer.parseInt(params.get("pageSize").toString());
+ params.put("pageCurr", pageCurr);
+
+ List<VoStatistics> lit = seClientMapper.getStatistics(params);
+ Map map_record = new HashMap();
+ map_record.put("itemTotal", itemTotal);
+ map_record.put("pageCurr", vo.pageCurr);
+ map_record.put("pageSize", pageSize);
+ map_record.put("pageTotal", pageTotal);
+ map_record.put("list", lit);
+
+ Map map_result = new HashMap();
+ map_result.put("count", count);
+ map_result.put("money", money);
+ map_result.put("records", map_record);
+
+ return map_result;
+ }
+
+ /**
+ * 鏍规嵁涓婚敭鑾峰彇鍐滄埛瀵硅薄
+ * @param id 鍐滄埛涓婚敭
+ * @return 鍐滄埛瀵硅薄
+ */
+ public VoClient getOneClient(Long id) {
+ SeClient seClient = seClientMapper.selectByPrimaryKey(id);
+ VoClient voClient = SeClientToVoClient.INSTANCT.po2vo(seClient);
+ return voClient;
+ }
/**
* 澧炲紑鍐滄埛
* @param po
@@ -73,4 +214,45 @@
public Map getDistrictsByVillageId(Long villageId) {
return baDistrictMapper.getDistrictsByVillageId(villageId);
}
+
+ /**
+ * 鏍规嵁鍐滄埛ID閫昏緫鍒犻櫎鍐滄埛
+ */
+ public Integer deleteClientById(Long id) {
+ return seClientMapper.deleteClientById(id);
+ }
+
+ /**
+ * 淇敼鍐滄埛瀵硅薄
+ * @param po 鍐滄埛瀵硅薄
+ * @return 淇敼璁板綍鏉℃暟
+ */
+ public Integer updateByPrimaryKey(SeClient po) {
+ return seClientMapper.updateByPrimaryKey(po);
+ }
+
+ /**
+ * 鏍规嵁涓婚敭鑾峰彇鏉慖D
+ * @param id
+ * @return
+ */
+ public Long getVillageIdById(Long id) {
+ return seClientMapper.getVillageIdById(id);
+ }
+
+ /**
+ * 鑾峰彇铏氭嫙鍗″彿鏈�澶у��
+ * @return
+ */
+ public Long getMa1xVirtualId() {
+ return seClientMapper.getMa1xVirtualId();
+ }
+
+ /**
+ * 鑾峰彇鐢ㄦ按鏂瑰紡鍒楄〃
+ * @return
+ */
+ public List<Map<String, Object>> getWaterTypes() {
+ return seClientMapper.getWaterTypes();
+ }
}
--
Gitblit v1.8.0