From 68a19b71ddb5775670e4cb125c29b4ee70d62da9 Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期四, 19 十二月 2024 17:26:29 +0800
Subject: [PATCH] 代码初始化

---
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java |  259 ++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 201 insertions(+), 58 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 afbc248..95aaf3c 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
@@ -14,13 +14,14 @@
 import com.doumee.core.haikang.model.param.respose.*;
 import com.doumee.core.haikang.service.HKCarOpenService;
 import com.doumee.core.haikang.service.HKService;
+import com.doumee.core.model.ApiResponse;
 import com.doumee.core.model.PageData;
 import com.doumee.core.model.PageWrap;
 import com.doumee.core.utils.Constants;
 import com.doumee.core.utils.DateUtil;
 import com.doumee.core.utils.Utils;
 import com.doumee.core.wms.model.response.WmsBaseResponse;
-import com.doumee.core.wms.model.response.WmsInventoryDataResponse;
+import com.doumee.core.wms.model.response.WmsBaseDataResponse;
 import com.doumee.core.wms.model.response.WmsInventoryJsonResponse;
 import com.doumee.dao.business.*;
 import com.doumee.dao.business.join.PlatformWarnEventJoinMapper;
@@ -39,7 +40,9 @@
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.web.bind.annotation.RequestBody;
 
+import javax.servlet.http.HttpServletResponse;
 import java.math.BigDecimal;
 import java.util.*;
 import java.util.stream.Collectors;
@@ -153,7 +156,7 @@
      * @return
      */
     @Override
-    public BoardStockListVO stockList( ){
+    public BoardStockListVO stockList(){
         BoardStockListVO data = new BoardStockListVO();
         double toatalNum = 1d;
         BigDecimal num = new BigDecimal(0);
@@ -161,9 +164,8 @@
         try {
             toatalNum =Double.parseDouble(systemDictDataBiz.queryByCode(Constants.WMS_PARAM,Constants.WMS_TOTAL_STOCK_NUM).getCode()) ;
         }catch (Exception e){
-
         }
-        WmsBaseResponse<WmsInventoryDataResponse> response =  wmsService.getInventoryList();
+        WmsBaseResponse<WmsBaseDataResponse> response =  wmsService.getInventoryList();
         if(response!=null && response.getData()!=null && response.getData().size()>0){
             List<WmsInventoryJsonResponse> t= response.getData().get(0).getJson();
             if(t!=null &&t.size()>0){
@@ -171,7 +173,7 @@
                     num = num.add (Constants.formatBigdecimal( j.getQty()));
                     GeneralVO d = new GeneralVO();
                     d.setNum(Constants.formatBigdecimal(j.getQty()));
-                    d.setName(j.getItem_name());
+                    d.setName(j.getItemName());
                     list.add(d);
                 }
             }
@@ -182,7 +184,7 @@
             toatalNum =1;
         }
         data.setTotalNum(new BigDecimal(toatalNum));
-        data.setUseRate(data.getTotalNum().divide(data.getNum(),2,BigDecimal.ROUND_UP));
+        data.setUseRate(Constants.formatBigdecimal(data.getNum()).divide(data.getTotalNum(),2,BigDecimal.ROUND_HALF_UP));
         return data;
 
     }
@@ -579,7 +581,7 @@
         param.setPage(1);
         param.setUserId("admin");
 //        param.setRegionIndexCodes("root000000");
-        param.setAlarmStartTime(DateUtil.getPlusTime2(DateUtil.addDaysToDate(new Date(),-1)));
+        param.setAlarmStartTime(DateUtil.getFomartDate(new Date(),"yyyy-MM-dd") + " 00:00:00");
         param.setAlarmEndTime(DateUtil.getPlusTime2(new Date()));
         param.setPageSize(20);
         BaseResponse<BaseListPageResponse<FindHomeAlarmInfoPageResponse>> response = HKService.findHomeAlarmInfoPage(param);
@@ -606,9 +608,14 @@
         MinitorDataSearchRequest param = new MinitorDataSearchRequest();
         param.setResourceTypeCodes(new String[]{});
         param.setRegionIndexCode("root000000");
+        param.setResourceTypeCodes("60,61".split(","));
         param.setIncludeDown("1");
         param.setUserId("admin");
+        param.setPageNo(1);
+        param.setPageSize(100);
         BaseResponse<BaseListPageResponse<MonitorDataSearchResponse>> response = HKService.minitorDataSearch(param);
+        String pressure = systemDictDataBiz.queryByCode(Constants.WMS_PARAM,Constants.WMS_PRESSURE_LEVEL).getCode();
+        String liquid = systemDictDataBiz.queryByCode(Constants.WMS_PARAM,Constants.WMS_LIQUID_LEVEL).getCode();
         if(response != null && StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE)
                 && response.getData()!=null ) {
             List<MonitorDataSearchResponse> r = response.getData().getList();
@@ -616,17 +623,37 @@
                 for(MonitorDataSearchResponse model : r){
                     MonitorDataVO m = new MonitorDataVO();
                     m.setName(model.getName());
+                    m.setLevel(Constants.equalsInteger(model.getType(),60)?liquid:pressure);
                     m.setDataList(new ArrayList<>());
                     if(model.getValues()!=null){
+                        List<MonitorDataInfoVO> dataList = new ArrayList<>();
                         for(MonitorDataValResponse v : model.getValues()){
-                            MonitorDataInfoVO vm = new MonitorDataInfoVO();
-                            vm.setValue(v.getMonitorValue());
-                            vm.setCateName(v.getMonitorSpecificName());
-                            vm.setCateCode(v.getMonitorTypeKey());
-                            vm.setTypeCode(v.getMonitorTypeCode());
-                            vm.setTypeName(v.getMonitorTypeName());
+                            if(Constants.equalsInteger(model.getType(),60)){
+                                if(v.getMonitorTypeCode().equals("254001")){
+                                    MonitorDataInfoVO vm = new MonitorDataInfoVO();
+                                    vm.setValue(v.getMonitorValue());
+                                    vm.setCateName(v.getMonitorSpecificName());
+                                    vm.setCateCode(v.getMonitorTypeKey());
+                                    vm.setTypeCode(v.getMonitorTypeCode());
+                                    vm.setTypeName(v.getMonitorTypeName());
+                                    dataList.add(vm);
+                                }
+                            }else{
+                                if(v.getMonitorTypeCode().equals("253958")){
+                                    MonitorDataInfoVO vm = new MonitorDataInfoVO();
+                                    vm.setValue(v.getMonitorValue());
+                                    vm.setCateName(v.getMonitorSpecificName());
+                                    vm.setCateCode(v.getMonitorTypeKey());
+                                    vm.setTypeCode(v.getMonitorTypeCode());
+                                    vm.setTypeName(v.getMonitorTypeName());
+                                    dataList.add(vm);
+                                }
+                            }
+
                         }
+                        m.setDataList(dataList);
                     }
+                    list.add(m);
                 }
             }
         }
@@ -670,6 +697,7 @@
         List<PlatformJob>  dataList = platformJobMapper.selectJoinList(PlatformJob.class,
                 new MPJLambdaWrapper<PlatformJob>()
                         .selectAs(PlatformJob::getId,PlatformJob::getId)
+                        .selectAs(PlatformJob::getCreateDate,PlatformJob::getCreateDate)
                         .selectAs(PlatformJob::getTotalNum,PlatformJob::getTotalNum)
 //                        .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",create_date)
                         .eq(PlatformJob::getIsdeleted,Constants.ZERO)
@@ -680,7 +708,7 @@
             TransportMeasureVO data = new TransportMeasureVO();
             data.setPlanDate(date);
             data.setPlanTimes(0);
-            data.setPlanTaskNum(new BigDecimal(random.nextInt(0)));
+            data.setPlanTaskNum(new BigDecimal( 0));
             data.setFinishTaskNum(new BigDecimal(0));
             for(PlatformJob job :dataList){
                 if(queryType == 2){
@@ -729,7 +757,11 @@
                         .selectAll(PlatformJob.class)
                         .eq(PlatformJob::getIsdeleted,Constants.ZERO)
                         .eq(PlatformJob::getCarCodeFront,param.getCarCode())
-                        .in(PlatformJob::getStatus,Constants.PlatformJobStatus.DONE.getKey(),Constants.PlatformJobStatus.LEAVED.getKey(),Constants.PlatformJobStatus.AUTHED_LEAVE.getKey(),Constants.PlatformJobStatus.CALLED.getKey())
+                        .in(PlatformJob::getStatus,
+                                Constants.PlatformJobStatus.DONE.getKey(),
+                                Constants.PlatformJobStatus.LEAVED.getKey(),
+                                Constants.PlatformJobStatus.AUTHED_LEAVE.getKey(),
+                                Constants.PlatformJobStatus.CALLED.getKey())
                         .last("limit 1"));
         if(job!=null){
             List<PlatformLog>  logList = platformLogMapper.selectJoinList(PlatformLog.class,
@@ -769,7 +801,7 @@
                                 .orderByDesc(PlatformLog::getCreateDate));
                 if(detailList!=null){
                     for(PlatformWmsDetail d : detailList){
-                        if(!isNotExistIocode(d.getIocode(),data.getContractList())){
+                        if(isExistIocode(d.getIocode(),data.getContractList())){
                                 continue;
                         }
                         tt = new CarsContractVO();
@@ -804,7 +836,7 @@
         return list;
     }
 
-    private boolean isNotExistIocode(String iocode, List<CarsContractVO> detailList) {
+    private boolean isExistIocode(String iocode, List<CarsContractVO> detailList) {
         if(detailList!=null){
             for(CarsContractVO d :detailList){
                 if(StringUtils.equals(d.getIoCode(),iocode)){
@@ -847,44 +879,50 @@
         Date lastYear = DateUtil.addYearToDate(year,-1);//鍘诲勾
 
         List<PlatformJob>  monthNum = platformJobMapper.selectJoinList(PlatformJob.class,
-                new MPJLambdaWrapper<PlatformJob>()
-                .selectAs(PlatformJob::getId,PlatformJob::getId)
-                .select(PlatformJob::getTotalNum,PlatformJob::getTotalNum)
-//                .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",create_date)
+                    new MPJLambdaWrapper<PlatformJob>()
+                        .selectAs(PlatformJob::getId,PlatformJob::getId)
+                            .select(PlatformJob::getType,PlatformJob::getType)
+                        .select(PlatformJob::getTotalNum,PlatformJob::getTotalNum)
+                        .select(PlatformJob::getStatus,PlatformJob::getStatus)
                         .eq(PlatformJob::getIsdeleted,Constants.ZERO)
-//                        .in(PlatformJob::getType,Constants.ONE,Constants.THREE)
                         .in(PlatformJob::getStatus,Constants.PlatformJobStatus.DONE.getKey(),Constants.PlatformJobStatus.LEAVED.getKey(),Constants.PlatformJobStatus.AUTHED_LEAVE.getKey())
-                        .apply("year(create_date) = year("+DateUtil.getPlusTime2(month)+") and month(create_date) = month("+DateUtil.getPlusTime2(month)+") and to_days(create_date)<= "+DateUtil.getPlusTime2(month)));
+                        .apply("year(done_date) = year('"+DateUtil.getPlusTime2(month)+"') and month(done_date) = month('"+DateUtil.getPlusTime2(month)+"') "));
         List<PlatformJob>  monthLastNum = platformJobMapper.selectJoinList(PlatformJob.class,
                 new MPJLambdaWrapper<PlatformJob>()
                         .selectAs(PlatformJob::getId,PlatformJob::getId)
+                        .selectAs(PlatformJob::getTotalNum,PlatformJob::getTotalNum)
+                        .select(PlatformJob::getType,PlatformJob::getType)
+                        .select(PlatformJob::getStatus,PlatformJob::getStatus)
 //                        .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",create_date)
                         .eq(PlatformJob::getIsdeleted,Constants.ZERO)
                         .in(PlatformJob::getType,Constants.ONE,Constants.THREE)
                         .in(PlatformJob::getStatus,Constants.PlatformJobStatus.DONE.getKey(),Constants.PlatformJobStatus.LEAVED.getKey(),Constants.PlatformJobStatus.AUTHED_LEAVE.getKey())
-                        .apply("year(create_date) = year("+DateUtil.getPlusTime2(lastMonth)+") and month(create_date) = month("+DateUtil.getPlusTime2(lastMonth)+") and to_days(create_date)<= "+DateUtil.getPlusTime2(lastMonth)));
+                        .apply("year(done_date) = year('"+DateUtil.getPlusTime2(lastMonth)+"') and month(done_date) = month('"+DateUtil.getPlusTime2(lastMonth)+"') and  done_date<= '"
+                                +DateUtil.getPlusTime2(lastMonth)+"'"));
         List<PlatformJob>  yearNum = platformJobMapper.selectJoinList(PlatformJob.class,
                 new MPJLambdaWrapper<PlatformJob>()
                         .selectAs(PlatformJob::getId,PlatformJob::getId)
-                        .select(PlatformJob::getTotalNum,PlatformJob::getTotalNum)
-                        .selectCount(PlatformJob::getPlatformId,PlatformJob::getCountum)
-//                        .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",create_date)
+                        .selectAs(PlatformJob::getTotalNum,PlatformJob::getTotalNum)
+                        .select(PlatformJob::getStatus,PlatformJob::getStatus)
+                        .select(PlatformJob::getType,PlatformJob::getType)
+//                        .selectCount(PlatformJob::getPlatformId,PlatformJob::getCountum)
                         .eq(PlatformJob::getIsdeleted,Constants.ZERO)
                         .in(PlatformJob::getType,Constants.ONE,Constants.THREE)
                         .in(PlatformJob::getStatus,Constants.PlatformJobStatus.DONE.getKey(),Constants.PlatformJobStatus.LEAVED.getKey(),Constants.PlatformJobStatus.AUTHED_LEAVE.getKey())
-                        .apply("year(create_date) = year("+DateUtil.getPlusTime2(year)+")   and to_days(create_date)<= "+DateUtil.getPlusTime2(year)));
+                        .apply("year(done_date) = year('"+DateUtil.getPlusTime2(year)+"')   and done_date<= '"+DateUtil.getPlusTime2(year)+"'"));
         List<PlatformJob> yearLastNum = platformJobMapper.selectJoinList(PlatformJob.class,
                 new MPJLambdaWrapper<PlatformJob>()
                         .selectAs(PlatformJob::getId,PlatformJob::getId)
+                        .selectAs(PlatformJob::getType,PlatformJob::getId)
+                        .select(PlatformJob::getStatus,PlatformJob::getStatus)
                         .select(PlatformJob::getTotalNum,PlatformJob::getTotalNum)
-//                        .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",create_date)
                         .eq(PlatformJob::getIsdeleted,Constants.ZERO)
                         .in(PlatformJob::getType,Constants.ONE,Constants.THREE)
                         .in(PlatformJob::getStatus,Constants.PlatformJobStatus.DONE.getKey(),Constants.PlatformJobStatus.LEAVED.getKey(),Constants.PlatformJobStatus.AUTHED_LEAVE.getKey())
-                        .apply("year(create_date) = year("+DateUtil.getPlusTime2(lastYear)+")  and to_days(create_date)<= "+DateUtil.getPlusTime2(lastYear)));
+                        .apply("year(done_date) = year('"+DateUtil.getPlusTime2(lastYear)+"')  and done_date<= '"+DateUtil.getPlusTime2(lastYear)+"'"));
 
         data.setMonthOutTotal(getSumTotalByList(monthNum,0,null));//鏈湀鍑哄簱閲�
-        data.setMonthLastOutTotal(getSumTotalByList(monthLastNum,null,null) );//涓婃湁鍑哄簱閲�
+        data.setMonthLastOutTotal(getSumTotalByList(monthLastNum,null,null) );//涓婃湀鍑哄簱閲�
         data.setYearOutTotal(getSumTotalByList(yearNum,null,null)  );//鏈勾鍑哄簱閲�
         data.setYearLastOutTotal(getSumTotalByList(yearLastNum,null,null) );//鍘诲勾鍑哄簱閲�
         data.setMonthOutTimes(monthNum!=null?monthNum.size():0);
@@ -900,19 +938,30 @@
 //                        .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",create_date)
                         .eq(PlatformJob::getIsdeleted,Constants.ZERO)
                         .notIn(PlatformJob::getStatus,Constants.PlatformJobStatus.DONE.getKey(),Constants.PlatformJobStatus.LEAVED.getKey(),Constants.PlatformJobStatus.AUTHED_LEAVE.getKey(),Constants.PlatformJobStatus.CALLED.getKey())
-                        .apply(" and to_days(create_date) <to_days(now())"));
+                        .apply("   to_days(create_date) <to_days(now())"));
 
-        //==========浠婂ぉ鍑哄叆搴撲换鍔�
-        List<PlatformJob> currentNum = platformJobMapper.selectJoinList(PlatformJob.class,
+        //==========浠婂ぉ鍑哄叆搴撳畬鎴愰噺
+        List<PlatformJob> currentDoneNum = platformJobMapper.selectJoinList(PlatformJob.class,
                 new MPJLambdaWrapper<PlatformJob>()
                         .selectAs(PlatformJob::getId,PlatformJob::getId)
-                        .selectAs(PlatformJob::getStatus,PlatformJob::getStatus)
                         .selectAs(PlatformJob::getType,PlatformJob::getType)
+                        .selectAs(PlatformJob::getStatus,PlatformJob::getStatus)
                         .select(PlatformJob::getTotalNum,PlatformJob::getTotalNum)
 //                        .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",create_date)
                         .eq(PlatformJob::getIsdeleted,Constants.ZERO)
                         .notIn(PlatformJob::getStatus,Constants.PlatformJobStatus.CALLED.getKey())
-                        .apply("year(create_date) = year("+DateUtil.getPlusTime2(lastYear)+")  and to_days(create_date)<= "+DateUtil.getPlusTime2(lastYear)));
+                        .apply(" to_days(done_date) = to_days(now())"));
+        //==========浠婂ぉ涓嬪彂鍑哄叆搴撲换鍔�----
+        List<PlatformJob> currentNum = platformJobMapper.selectJoinList(PlatformJob.class,
+                new MPJLambdaWrapper<PlatformJob>()
+                        .selectAs(PlatformJob::getId,PlatformJob::getId)
+                        .selectAs(PlatformJob::getType,PlatformJob::getType)
+                        .selectAs(PlatformJob::getStatus,PlatformJob::getStatus)
+                        .select(PlatformJob::getTotalNum,PlatformJob::getTotalNum)
+//                        .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",create_date)
+                        .eq(PlatformJob::getIsdeleted,Constants.ZERO)
+                        .notIn(PlatformJob::getStatus,Constants.PlatformJobStatus.CALLED.getKey())
+                        .apply(" to_days(create_date) = to_days(now())"));
 
         BigDecimal beforeOutNum = (getSumTotalByList(beforeJobNum,0,null));//浠婂ぉ涔嬪墠鏈畬鎴愬嚭搴撲换鍔�
         BigDecimal currentOutNum = (getSumTotalByList(currentNum,0,null));//浠婂ぉ涓嬪彂鍑哄簱浠诲姟
@@ -920,12 +969,12 @@
         BigDecimal currentInNum = (getSumTotalByList(currentNum,1,null));//浠婂ぉ涓嬪彂鍏ュ簱浠诲姟
         data.setCurrentInNum(beforeInNum.add(currentInNum));//褰撳墠鍏ュ簱鎬讳换鍔℃垚閲�
         data.setCurrentOutNum(beforeOutNum.add(currentOutNum));//褰撳墠鍑哄簱鎬讳换鍔℃垚閲�
-        data.setCurrentInDoneNum(getSumTotalByList(currentNum,0,1));//浠婃棩瀹屾垚閲�
-        data.setCurrentOutDoneNum(getSumTotalByList(currentNum,1,1));//浠婃棩瀹屾垚閲�
+        data.setCurrentInDoneNum(getSumTotalByList(currentDoneNum,1,1));//浠婃棩瀹屾垚閲�
+        data.setCurrentOutDoneNum(getSumTotalByList(currentDoneNum,0,1));//浠婃棩瀹屾垚閲�
 
         //------------浠婃棩鍑哄叆搴撴晥鐜�----------------
-        BigDecimal outHours = getTotalDoneTimes(currentNum,0);//
-        BigDecimal inHours = getTotalDoneTimes(currentNum,1);//
+        BigDecimal outHours = getTotalDoneTimes(currentDoneNum,0);//
+        BigDecimal inHours = getTotalDoneTimes(currentDoneNum,1);//
         if(outHours.compareTo(new BigDecimal(0))>0){
             data.setTodayOutRate(data.getCurrentOutDoneNum().divide(outHours,2));//褰撳墠鍏ュ簱鎬讳换鍔℃垚閲�
         }
@@ -933,15 +982,15 @@
             data.setTodayInRate(data.getCurrentInDoneNum().divide(inHours,2));//褰撳墠鍏ュ簱鎬讳换鍔℃垚閲�
         }
         //------------鏈湀鍑哄叆搴撴晥鐜�----------------
-        BigDecimal outMonthNum = getSumTotalByList(monthNum,0,null).add(data.getCurrentOutDoneNum());
+//        BigDecimal outMonthNum = getSumTotalByList(monthNum,0,null).add(data.getCurrentOutDoneNum());
         BigDecimal inMonthNum = getSumTotalByList(monthNum,1,null).add(data.getCurrentInDoneNum());
-        BigDecimal outYearHours = getTotalDoneTimes(yearNum,0).add(outHours);//
-        BigDecimal inYearHours = getTotalDoneTimes(yearNum,1).add(inHours);//
-        if(outYearHours.compareTo(new BigDecimal(0))>0){
-            data.setMonthOutRate(outMonthNum.divide(outYearHours,2));//鏈湀鍏ュ簱鏁堢巼
+        BigDecimal outMonthHours = getTotalDoneTimes(monthNum,0).add(outHours);//
+        BigDecimal inMonthHours = getTotalDoneTimes(monthNum,1).add(inHours);//
+        if(outMonthHours.compareTo(new BigDecimal(0))>0){
+            data.setMonthOutRate(data.getMonthOutTotal().divide(outMonthHours,0,BigDecimal.ROUND_HALF_UP));//鏈湀鍏ュ簱鏁堢巼
         }
-        if(inYearHours.compareTo(new BigDecimal(0))>0){
-            data.setMonthInRate(inMonthNum.divide(inYearHours,2));//鏈湀鍏ュ簱鏁堢巼
+        if(inMonthHours.compareTo(new BigDecimal(0))>0){
+            data.setMonthInRate(inMonthNum.divide(inMonthHours,0,BigDecimal.ROUND_HALF_UP));//鏈湀鍏ュ簱鏁堢巼
         }
         return data;
     }
@@ -1015,12 +1064,20 @@
 //            if(Constants.formatBigdecimal(job.getIoQty()).compareTo(new BigDecimal(0)) >0){
 //                r.add( job.getIoQty());
 //            }else{
-                r.add(Constants.formatBigdecimal(job.getTotalNum()));
+            r =  r.add(Constants.formatBigdecimal(job.getTotalNum()));
 //            }
         }
         return Constants.formatBigdecimal0Float(r);
     }
 
+    @Override
+    public     List<CarsAlarmResultListResponse> carsEventList(){
+
+        if(HKCarOpenService.HK_CARS_LIST == null){
+            HKCarOpenService.HK_CARS_LIST =   HKCarOpenService.getAllCarsDetais();
+        }
+        return  HKCarOpenService.getAlarmEvemtList(  HKCarOpenService.HK_CARS_LIST,new Date());
+    }
     @Override
     public     BoardCarsListVO platformJobCarsList(){
         BoardCarsListVO data = new BoardCarsListVO();
@@ -1057,7 +1114,8 @@
                         .groupBy(PlatformJob::getCarCodeFront));
                 data.setBusyNum( busyNum!=null ?busyNum.size():0);//鍦ㄩ�旀湁浠诲姟鏁伴噺
                 data.setIdleNum(codes.size() -data.getBusyNum());//鏃犱换鍔$┖闂叉暟閲�
-                data.setEventList(HKCarOpenService.getAlarmEvemtList(detaisResponses,new Date()));
+                HKCarOpenService.HK_CARS_LIST = detaisResponses;
+//                data.setEventList(HKCarOpenService.getAlarmEvemtList(detaisResponses,new Date()));
                 if(busyNum != null){
                   FLAG:  for(CarsDeviceDetaisResponse model:detaisResponses){
                         for(PlatformJob job : busyNum){
@@ -1235,17 +1293,22 @@
         BigDecimal carbonWater = new BigDecimal(0);//鏈湀鐢ㄦ按
         BigDecimal carbonElec = new BigDecimal(0);//鐢ㄧ數
 
+        data.setYesterdayElectricity(getDefaultData());//鏄ㄦ棩鐢ㄧ數
         data.setTodayElectricity(getDefaultData());//浠婃棩鐢ㄧ數
         data.setElectricityQuantity(getDefaultData());//涓婃湀鐢ㄧ數
-        data.setWaterQuantity(getDefaultData());//涓婃湀鐢ㄦ按
-        data.setGasQuantity(getDefaultData());//涓婃湀鐢ㄦ皵
         data.setMonthElectricity(getDefaultData());//鏈湀鐢ㄧ數
-        data.setYesterdayElectricity(getDefaultData());//鏄ㄦ棩鐢ㄧ數
+
+
         getMonthElectricityData(data.getMonthElectricity());//閫氳繃瀹夐槻骞宠幏鍙栨湰鏈堢敤鐢甸噺鏁版嵁
         carbonElec = new BigDecimal(StringUtils.defaultString(data.getMonthElectricity().getTotal(), "0"));
+
         getLastMonthElectricityData(data.getElectricityQuantity());//閫氳繃瀹夐槻骞宠幏鍙栦笂鏈堢敤鐢甸噺鏁版嵁
-        getCurrentDateElectircityData(data.getTodayElectricity(),0);//閫氳繃瀹夐槻骞宠幏鍙栦粖鏃ョ敤鐢甸噺鏁版嵁
         getCurrentDateElectircityData(data.getYesterdayElectricity(),-1);//閫氳繃瀹夐槻骞宠幏鍙栨槰鏃ョ敤鐢甸噺鏁版嵁
+        getCurrentDateElectircityData(data.getTodayElectricity(),0);//閫氳繃瀹夐槻骞宠幏鍙栦粖鏃ョ敤鐢甸噺鏁版嵁
+
+        data.setWaterQuantity(getDefaultData());//涓婃湀鐢ㄦ按
+        data.setGasQuantity(getDefaultData());//涓婃湀鐢ㄦ皵
+        carbonElec = new BigDecimal(StringUtils.defaultString(data.getMonthElectricity().getTotal(), "0"));
         String firstDate = DateUtil.getFirstDayCurrentMonth() +" 00:00:00";
         Date month0 = DateUtil.getDateFromString(firstDate);
         Date month1 = DateUtil.increaseMonth(month0,-1);//涓婃湀
@@ -1335,12 +1398,62 @@
      */
     private void getLastMonthElectricityData(EnergyModelDataVO data) {
          BaseResponse<LastMonthFeeByMeterTypeResponse> response = HKService.lastMonthFeeByMeterType("1");
-        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"));
+//        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"));
+//        }
+//        String nowMonth = DateUtil.getFomartDate(new Date(),"yyyy-MM-dd");
+//        //涓婃湀鏃ユ湡
+//        DateUtil.getBeforMonthStr(new Date(),1);
+//        //涓婁笂鏈堟棩鏈�
+//        DateUtil.getBeforMonthStr(new Date(),2);
+//        //涓婂勾鏃ユ湡
+//        DateUtil.getBeforMonthStr(new Date(),13);
+
+        EnergyTotalDataRequest param = new EnergyTotalDataRequest();
+        param.setPeriodType("month");
+        param.setDate(DateUtil.getBeforMonthStr(new Date(),1).substring(0,7));
+        BaseResponse<EnergyTotalDataResponse> beforMonthResponse = HKService.energyTotal(param);
+        if(beforMonthResponse != null && StringUtils.equals(beforMonthResponse.getCode(), HKConstants.RESPONSE_SUCCEE) && beforMonthResponse.getData()!=null ){
+            data.setTotal(beforMonthResponse.getData().getElectricity());
+            data.setTotalNum(new BigDecimal(beforMonthResponse.getData().getElectricity()));
+        }
+        param.setDate(DateUtil.getBeforMonthStr(new Date(),2).substring(0,7));
+        BaseResponse<EnergyTotalDataResponse> beforBeforMonthResponse = HKService.energyTotal(param);
+        if(beforBeforMonthResponse != null && StringUtils.equals(beforBeforMonthResponse.getCode(), HKConstants.RESPONSE_SUCCEE) && beforBeforMonthResponse.getData()!=null ){
+            if(Objects.nonNull(beforBeforMonthResponse.getData()) && StringUtils.isNotBlank(beforBeforMonthResponse.getData().getElectricity())){
+                data.setRingNum(new BigDecimal(beforBeforMonthResponse.getData().getElectricity()));
+            }else{
+                data.setRingNum(BigDecimal.ZERO);
+            }
+            if(Objects.isNull(data.getTotal()) || Objects.isNull(data.getRingNum())
+                    || data.getTotalNum().compareTo(BigDecimal.ZERO) ==0  || data.getRingNum().compareTo(BigDecimal.ZERO) ==0 ){
+               data.setRingRate("0");
+            }else{
+               data.setRingRate(new BigDecimal(data.getTotal()).divide(data.getRingNum(),2,BigDecimal.ROUND_HALF_UP).toString());
+            }
+        }
+        param.setDate(DateUtil.getBeforMonthStr(new Date(),13).substring(0,7));
+        BaseResponse<EnergyTotalDataResponse> beforYearMonthResponse = HKService.energyTotal(param);
+        if(beforYearMonthResponse != null && StringUtils.equals(beforYearMonthResponse.getCode(), HKConstants.RESPONSE_SUCCEE) && beforBeforMonthResponse.getData()!=null ){
+            if(Objects.nonNull(beforYearMonthResponse.getData()) && StringUtils.isNotBlank(beforYearMonthResponse.getData().getElectricity())){
+                data.setSameNum(new BigDecimal(beforYearMonthResponse.getData().getElectricity()));
+            }else{
+                data.setSameNum(BigDecimal.ZERO);
+            }
+            if(Objects.isNull(data.getTotal()) || Objects.isNull(data.getSameNum())
+                    || data.getTotalNum().compareTo(BigDecimal.ZERO) ==0  || data.getSameNum().compareTo(BigDecimal.ZERO) ==0 ){
+                data.setSameRate("0");
+            }else{
+                data.setSameRate(new BigDecimal(data.getTotal()).divide(data.getSameNum(),2,BigDecimal.ROUND_HALF_UP).toString());
+            }
         }
     }
+
+
+
+
 
     /**
      * 閫氳繃瀹夐槻骞宠幏鍙栦粖鏃ョ敤鐢甸噺
@@ -1390,7 +1503,6 @@
         }
         if(data == null){
             data = new RegionEnergyListResponse();
-            data.setSecondRegionDataList(new ArrayList<>());
             data.setRootValue("0");
             data.setSamePercent("0");
             data.setRingPercent("0");
@@ -1635,18 +1747,21 @@
         if(platformList!=null && platformList.size()>0){
             List<PlatformJob> jobList = platformJobMapper.selectJoinList(PlatformJob.class, new MPJLambdaWrapper<PlatformJob>()
                     .selectAll( PlatformJob.class)
+//                    .selectAs(Platform::getCode,PlatformJob::getPlatformCode)
                     .select("( select pl.CREATE_DATE from platform_log pl where t.id = pl.obj_id and pl.OBJ_TYPE = "+Constants.PlatformJobLogType.WORKING.getKey()+"  order by pl.CREATE_DATE desc  limit 1  ) as newStartDate")
                     //.select(" (  select sum(ifnull(pl.IO_QTY , 0 ))   from platform_wms_detail pl  where   pl.job_id = t.id and pl.isdeleted=0 )",PlatformJob::getWorkNum)
                     .select(" (  case when t.total_num is null  then ( select sum(pwd.IO_QTY) from platform_wms_detail pwd where pwd.JOB_ID = t.id  ) else t.total_num end )",PlatformJob::getWorkNum)
                     .apply("to_days(t.create_date) = to_days(now())")
                     .eq(Platform::getIsdeleted, Constants.ZERO)
                     .in(PlatformJob ::getStatus,new Integer[]{Constants.PlatformJobStatus.WORKING.getKey(),Constants.PlatformJobStatus.CALLED.getKey() })
+//                    .leftJoin(Platform.class,Platform::getId,PlatformJob::getPlatformId)
                     .orderByDesc(PlatformJob::getStatus ));
             //鏈堝彴鐘舵�侊細0=浣滀笟涓紱1=绌洪棽涓紱2=浣滀笟瓒呮椂;3=鍙彿
             for(Platform model : platformList){
                 PlatformWorkDataVO platformDurationVO = new PlatformWorkDataVO();
                 platformDurationVO.setPlatformName(model.getName());
                 platformDurationVO.setPlatformId(model.getId());
+                platformDurationVO.setPlatformCode(model.getCode());
                 platformDurationVO.setPlatformSort(model.getSortnum());
                 PlatformJob job = getJobFromListById(model.getId(),jobList);
                 if(job != null){
@@ -1896,4 +2011,32 @@
         return  data;
     }
 
+    /**
+     * 鏌ヨ鑳借�楃敤鐢典俊鎭�  1=浠婃棩锛�2=鏈湀锛�3=鏄ㄦ棩
+     * @return
+     */
+    @Override
+    public List<RegionDataRankingDataResponse> getRegionDataRanking(Integer type){
+        RegionDataRankingDataRequest request = new RegionDataRankingDataRequest();
+        request.setMeterType(1);
+        if(Constants.equalsInteger(type,Constants.ONE)){
+            request.setDate(DateUtil.getFomartDate(new Date(),"yyyy-MM-dd"));
+            request.setPeriodType("day");
+        }else if(Constants.equalsInteger(type,Constants.TWO)){
+            request.setDate(DateUtil.getFomartDate(new Date(),"yyyy-MM"));
+            request.setPeriodType("month");
+        }else{
+            request.setDate(DateUtil.getBeforDay(new Date(),1));
+            request.setPeriodType("day");
+        }
+        BaseResponse<List<RegionDataRankingDataResponse>> response = HKService.regionDataRanking(request);
+        if(response != null && StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE) && response.getData()!=null ){
+            return response.getData();
+        }else{
+            return null;
+        }
+    }
+
+
+
 }

--
Gitblit v1.9.3