From 422b8f74f9a602484cce319e302bf9baf127087d Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期一, 18 十一月 2024 11:50:55 +0800
Subject: [PATCH] 最新版本541200007

---
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java |   67 ++++++++++++++++++++-------------
 1 files changed, 40 insertions(+), 27 deletions(-)

diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java
index 05fef7f..dcabfe6 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java
@@ -464,10 +464,12 @@
         data.setGasQuantity(getDefaultData());//涓婃湀鐢ㄦ皵
         data.setMonthElectricity(getDefaultData());//鏈湀鐢ㄧ數
         data.setYesterdayElectricity(getDefaultData());//鏄ㄦ棩鐢ㄧ數
-        getMonthElectricityData(data.getMonthElectricity());//閫氳繃瀹夐槻骞宠幏鍙栨湰鏈堟暟鎹�
+        getMonthElectricityData(data.getMonthElectricity());//閫氳繃瀹夐槻骞宠幏鍙栨湰鏈堢敤鐢甸噺鏁版嵁
         carbonElec = new BigDecimal(StringUtils.defaultString(data.getMonthElectricity().getTotal(), "0"));
-        getLastMonthElectricityData(data.getElectricityQuantity());//閫氳繃瀹夐槻骞宠幏鍙栦笂鏈堟暟鎹�
-        String firstDate = DateUtil.getFirstDayOfThisMonth() +" 00:00:00";
+        getLastMonthElectricityData(data.getElectricityQuantity());//閫氳繃瀹夐槻骞宠幏鍙栦笂鏈堢敤鐢甸噺鏁版嵁
+        getCurrentDateElectircityData(data.getTodayElectricity(),0);//閫氳繃瀹夐槻骞宠幏鍙栦粖鏃ョ敤鐢甸噺鏁版嵁
+        getCurrentDateElectircityData(data.getYesterdayElectricity(),-1);//閫氳繃瀹夐槻骞宠幏鍙栨槰鏃ョ敤鐢甸噺鏁版嵁
+        String firstDate = DateUtil.getFirstDayCurrentMonth() +" 00:00:00";
         Date month0 = DateUtil.getDateFromString(firstDate);
         Date month1 = DateUtil.increaseMonth(month0,-1);//涓婃湀
         Date month2 = DateUtil.increaseMonth(month0,-2);//涓婁笂鏈�
@@ -517,13 +519,13 @@
         }
         if( data.getGasQuantity().getTotalNum().compareTo(new BigDecimal(0)) !=0){
             //璁$畻鐢ㄦ皵鍚屾瘮鐜瘮
-            data.getGasQuantity().setSameRate(Constants.formatBigdecimal4Float(data.getGasQuantity().getSameNum().divide(data.getGasQuantity().getTotalNum())).doubleValue()*100 +"");
-            data.getGasQuantity().setRingRate(Constants.formatBigdecimal4Float(data.getGasQuantity().getRingNum().divide(data.getGasQuantity().getTotalNum())).doubleValue()*100 +"");
+            data.getGasQuantity().setSameRate(Constants.formatBigdecimal4Float(data.getGasQuantity().getSameNum().divide(data.getGasQuantity().getTotalNum(),4,BigDecimal.ROUND_HALF_UP)).doubleValue()*100 +"");
+            data.getGasQuantity().setRingRate(Constants.formatBigdecimal4Float(data.getGasQuantity().getRingNum().divide(data.getGasQuantity().getTotalNum(),4,BigDecimal.ROUND_HALF_UP)).doubleValue()*100 +"");
         }
         if( data.getWaterQuantity().getTotalNum().compareTo(new BigDecimal(0)) !=0){
             // //璁$畻鐢ㄦ按鍚屾瘮鐜瘮
-            data.getWaterQuantity().setSameRate(Constants.formatBigdecimal4Float(data.getWaterQuantity().getSameNum().divide(data.getWaterQuantity().getTotalNum())).doubleValue()*100 +"");
-            data.getWaterQuantity().setRingRate(Constants.formatBigdecimal4Float(data.getWaterQuantity().getRingNum().divide(data.getWaterQuantity().getTotalNum())).doubleValue()*100 +"");
+            data.getWaterQuantity().setSameRate(Constants.formatBigdecimal4Float(data.getWaterQuantity().getSameNum().divide(data.getWaterQuantity().getTotalNum(),4,BigDecimal.ROUND_HALF_UP)).doubleValue()*100 +"");
+            data.getWaterQuantity().setRingRate(Constants.formatBigdecimal4Float(data.getWaterQuantity().getRingNum().divide(data.getWaterQuantity().getTotalNum(),4,BigDecimal.ROUND_HALF_UP)).doubleValue()*100 +"");
         }
 
         /*璁$畻纰虫帓閲忥紝浠ヤ笅涓変釜鍥犵礌涔嬪拰
@@ -543,7 +545,7 @@
      */
     private void getMonthElectricityData(EnergyModelDataVO data) {
         BaseResponse<MonthDataByMeterTypeResponse> response = HKService.getCurrentMonthDataByMeterType("1");
-        if(response != null && !StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE) && response.getData()!=null ){
+        if(response != null && StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE) && response.getData()!=null ){
            data.setRingRate(StringUtils.defaultString(response.getData().getRingPercent(),"0"));
            data.setSameRate(StringUtils.defaultString(response.getData().getSamePercent(),"0"));
            data.setTotal(StringUtils.defaultString(response.getData().getValue(),"0"));
@@ -556,11 +558,34 @@
      */
     private void getLastMonthElectricityData(EnergyModelDataVO data) {
         BaseResponse<LastMonthFeeByMeterTypeResponse> response = HKService.lastMonthFeeByMeterType("1");
-        if(response != null && !StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE) && response.getData()!=null ){
+        if(response != null && StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE) && response.getData()!=null ){
            data.setRingRate(StringUtils.defaultString(response.getData().getRingPercent(),"0"));
            data.setSameRate(StringUtils.defaultString(response.getData().getSamePercent(),"0"));
            data.setTotal(StringUtils.defaultString(response.getData().getValue(),"0"));
         }
+    }
+
+    /**
+     * 閫氳繃瀹夐槻骞宠幏鍙栦粖鏃ョ敤鐢甸噺
+     * @param data
+     */
+    private void getCurrentDateElectircityData(EnergyModelDataVO data,int days) {
+        EnergyTrendRequest param = new EnergyTrendRequest();
+        param.setDate(DateUtil.getFomartDate(DateUtil.addDaysToDate(new Date(),days),"yyyy-MM-dd"));//鏃ユ湡
+        param.setMeterType(1);
+        param.setShowType("4");
+        param.setNodeType(2);
+        param.setNodeId("root000000");
+        param.setPeriodType("day");
+        BigDecimal total = new BigDecimal(0);
+        BaseResponse<EnergyTrendResponse> response = HKService.energyTrend(param);
+        if(response != null && StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE) && response.getData()!=null&& response.getData().getYvalues()!=null ){
+            for (int i = 0; i < response.getData().getYvalues().get(0).getValue().length; i++) {
+                total = total.add(new BigDecimal(StringUtils.defaultString( response.getData().getYvalues().get(0).getValue()[i],"0")));
+            }
+
+        }
+        data.setTotal(Constants.formatBigdecimal2Float(total).toString());
     }
 
     private EnergyModelDataVO getDefaultData() {
@@ -582,7 +607,7 @@
     public   RegionEnergyListResponse energyRegionData(){
         RegionEnergyListResponse data = null;
         BaseResponse<RegionEnergyListResponse> response = HKService.regionEnergyList("1");
-        if(response != null && !StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE) && response.getData()!=null ){
+        if(response != null && StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE) && response.getData()!=null ){
             data = response.getData();
         }
         if(data == null){
@@ -609,12 +634,12 @@
         if(type >=0 && type <=2){
             //鐢ㄦ按鐢ㄧ數鐢ㄦ皵
             List<PlatformWaterGas> list =  platformWaterGasMapper.selectList(new QueryWrapper<PlatformWaterGas>()
-                            .select("DATE_FORMAT(TIME_INFO,'yyyy-MM') as time_info_str,sum(num) as num")
+                            .select("DATE_FORMAT(TIME_INFO,'%Y-%m') as time_info_str,sum(num) as num")
                     .lambda()
                     .eq(PlatformWaterGas::getIsdeleted,Constants.ZERO)
                     .eq(PlatformWaterGas::getType,type)
                     .apply("time_info BETWEEN DATE_SUB(CURDATE(), INTERVAL 12 MONTH) AND CURDATE()")//杩�12涓湀
-                    .last(" groupby DATE_FORMAT(TIME_INFO,'yyyy-MM')")
+                    .last(" group by DATE_FORMAT(TIME_INFO,'%Y-%m')")
             );
             for (int i = 0; i < 12; i++) {
                 Date tempDate = DateUtil.increaseMonth(lastMonth,i);
@@ -646,11 +671,11 @@
             param.setNodeId("root000000");
             param.setPeriodType("year");
             BaseResponse<EnergyTrendResponse> response = HKService.energyTrend(param);
-            if(response != null && !StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE) && response.getData()!=null&& response.getData().getYvalues()!=null ){
+            if(response != null && StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE) && response.getData()!=null&& response.getData().getYvalues()!=null ){
                 for (int i = 0; i < 12; i++) {
                     if(response.getData().getYvalues().size()>0 &&response.getData().getYvalues().get(0).getValue().length>i){
                         //鍙栫浉搴旂殑鍙傛暟鍊�
-                        energyDataVOList.get(0).setEnergy(new BigDecimal(response.getData().getYvalues().get(0).getValue()[i]));
+                        energyDataVOList.get(i).setEnergy(new BigDecimal(StringUtils.defaultString(response.getData().getYvalues().get(0).getValue()[i],"0")));
                     }
                 }
 
@@ -863,19 +888,6 @@
         if(jobList==null || jobList.size()==0){
             return workEfficiencyVOList;
         }
-  /*      List<PlatformWmsDetail> jobList = platformWmsDetailMapper.selectJoinList(PlatformWmsDetail.class, new MPJLambdaWrapper<PlatformWmsDetail>()
-                .selectAll( PlatformWmsDetail.class)
-                .selectAs( PlatformJob::getDoneDate,PlatformWmsDetail::getDoneDate)
-                .leftJoin(PlatformJob.class,PlatformJob::getId,PlatformWmsDetail::getJobId)
-                .eq(PlatformWmsDetail::getIsdeleted, Constants.ZERO)
-                .eq(PlatformJob::getIsdeleted, Constants.ZERO)
-                .in(Constants.equalsInteger(type,Constants.ZERO),PlatformJob::getType,new Integer[]{0,2,4})
-                .in(Constants.equalsInteger(type,Constants.ONE),PlatformJob::getType,new Integer[]{1,3})
-                .in(PlatformJob::getStatus, Constants.PlatformJobStatus.DONE.getKey()
-                        , Constants.PlatformJobStatus.AUTHED_LEAVE.getKey()
-                        , Constants.PlatformJobStatus.LEAVED.getKey())
-                .apply("to_days(t1.create_date) = to_days(now())")
-        );*/
         int curtotalNum = 0;
         Date today =  Utils.Date.getStart(new Date());
         long curTime=0, lastTime=0;
@@ -936,6 +948,7 @@
     public      List<PlatformWarnEvent> warningList(int limit){
         List<PlatformWarnEvent> platformLogList = platformWarnEventMapper.selectList(new QueryWrapper<PlatformWarnEvent>().lambda()
                 .eq(PlatformWarnEvent::getIsdeleted,Constants.ZERO)
+                .apply("to_days(create_date) = to_days(now())")
                 .orderByDesc(PlatformWarnEvent::getCreateDate)
                 .last(" limit "+limit)
         );

--
Gitblit v1.9.3