Jelajahi Sumber

智慧停车 公车管理 车辆排放 文印排放修改核心指标

ZhangManMan 2 tahun lalu
induk
melakukan
b3ebcd253f

+ 13 - 11
src/main/java/com/sky/ioc/mapper/ParkMapper.java

@@ -14,18 +14,7 @@ import java.util.Map;
 
 @Mapper
 public interface ParkMapper extends BaseMapper<Park> {
-    @Select("<script>" +
-            "SELECT count(1) FROM park where 1=1 " +
-            "<if test='iocParam!=null and iocParam.companyId != null '>" +
-            " and company_id=#{iocParam.companyId} " +
-            "</if>"+
-            "<if test='iocParam!=null and iocParam.timeRange != null '>" +
-            "<![CDATA[ and entry_time > #{iocParam.timeRange.startDate} " +
-            " and  entry_time < #{iocParam.timeRange.endDate} ]]>" +
 
-            "</if>"+
-            "</script>")
-    Integer getTotalParkByCompanyIdAndDeptId(@Param("iocParam") IocParam iocParam);
 
     @Select("<script>" +
             "SELECT count(1) FROM park where 1=1 " +
@@ -89,5 +78,18 @@ public interface ParkMapper extends BaseMapper<Park> {
     List<Park> getVacantList(@Param("iocParam") IocParam iocParam);
 
 
+    @Select("<script>" +
+            "SELECT count(DISTINCT parking_numbers)  from park" +
+            " where 1=1 " +
+            "<if test='iocParam!=null and iocParam.companyId != null '>" +
+            " and company_id=#{iocParam.companyId} " +
+            "</if>"+
+            "<if test='iocParam!=null '>" +
+            " <![CDATA[ and departure_time > #{iocParam.timeRange.startDate} and departure_time < #{iocParam.timeRange.endDate} ]]>" +
+            "</if>"+
+            "</script>")
+    Long pageUsedCount(@Param("iocParam") IocParam iocParam);
+
+
 
 }

+ 3 - 3
src/main/java/com/sky/ioc/service/carbon/impl/CarCarbonServiceImpl.java

@@ -50,13 +50,13 @@ public class CarCarbonServiceImpl implements CarCarbonService {
         DecimalFormat decimalFormat = new DecimalFormat("#.0");
         compare = Float.parseFloat(decimalFormat.format(compare));
 
-        objects.get(0).put("value",totalMile);
+        objects.get(0).put("value",MathUtils.division(totalDischarge,1,2));
         objects.get(0).put("compare",compare);
 
-        objects.get(1).put("value", MathUtils.division(totalMile,days,2));
+        objects.get(1).put("value",totalMile);
         objects.get(1).put("compare",compare);
 
-        objects.get(2).put("value",MathUtils.division(totalHours,days,2));
+        objects.get(2).put("value",MathUtils.division(totalMile,days,2));
         objects.get(2).put("compare",compare);
 
         objects.get(3).put("value",MathUtils.division(totalDischarge,days,2));

+ 5 - 19
src/main/java/com/sky/ioc/service/carbon/impl/CarbonServiceImpl.java

@@ -189,14 +189,10 @@ public class CarbonServiceImpl implements CarbonService {
         Double avgCost = busMapper.getAvgCostByCompanyIdAndDeptId(iocParam);
         Double totalHours = busMapper.getTotalHoursByCompanyIdAndDeptId(iocParam);
         Integer totalBus = busMapper.getTotalBusByCompanyIdAndDeptId(iocParam);
-        Integer total = busMapper.getTotalByCompanyIdAndDeptId(iocParam);
+        Integer total = 5;
         BigDecimal bigDecimal1 = new BigDecimal(avgCost);
         BigDecimal avgCostDec = bigDecimal1.divide(new BigDecimal(365), 2, RoundingMode.HALF_UP);
         avgCost = avgCostDec.doubleValue();
-     //  avgCost = Double.valueOf(decimalFormat.format(avgCost));
-        Double totalCarbon = busMapper.getTotalCarbonByCompanyIdAndDeptId(iocParam);
-        double avgHours = 0d;
-        double avgCarbon = 0d;
         double avgTimes = 0d;
         if(total>0){
             if(totalBus>0){
@@ -204,30 +200,20 @@ public class CarbonServiceImpl implements CarbonService {
                 BigDecimal avgTimesDec = bigDecimal.divide(new BigDecimal(total), 2, RoundingMode.HALF_UP);
                 avgTimes = avgTimesDec.doubleValue();
             }
-            if(totalHours>0){
-                BigDecimal bigDecimal = new BigDecimal(totalHours);
-                BigDecimal avgHoursDec = bigDecimal.divide(new BigDecimal(total), 2, RoundingMode.HALF_UP);
-                avgHours = avgHoursDec.doubleValue();
-            }
-            if(totalCarbon>0){
-                BigDecimal bigDecimal = new BigDecimal(totalCarbon);
-                BigDecimal avgCarbonDec = bigDecimal.divide(new BigDecimal(total), 2, RoundingMode.HALF_UP);
-                avgCarbon = avgCarbonDec.doubleValue();
-            }
         }
         ThreadLocalRandom random = ThreadLocalRandom.current();
         double compare = random.nextDouble(-1, 1);
         compare = Double.parseDouble(decimalFormat.format(compare));
-        objects.get(0).put("value",avgCost);
+        objects.get(0).put("value",total);
         objects.get(0).put("compare",compare);
 
-        objects.get(1).put("value",avgTimes);
+        objects.get(1).put("value",totalHours);
         objects.get(1).put("compare",compare);
 
-        objects.get(2).put("value",avgCarbon);
+        objects.get(2).put("value",avgCost);
         objects.get(2).put("compare",compare);
 
-        objects.get(3).put("value",avgHours);
+        objects.get(3).put("value",avgTimes);
         objects.get(3).put("compare",compare);
         indeicator.setWorthAttention("公车管理持续为您服务");
         indeicator.setList(objects);

+ 3 - 3
src/main/java/com/sky/ioc/service/parking/impl/ParkingServiceImpl.java

@@ -65,7 +65,7 @@ public class ParkingServiceImpl implements ParkingService {
         //车位数量
         Integer totalParking = parkingMapper.getTotalParkingByCompanyIdAndDeptId(iocParam);
         //停车记录数
-        Integer totalPark = parkMapper.getTotalParkByCompanyIdAndDeptId(iocParam);
+        Integer totalPark = parkMapper.getTotalParkByCompanyIdAndDeptIdAndEntryTime(iocParam);
         Double avgPark = 0d;
         //违停数量
         Long total = illegalParkingMapper.selectCount(new LambdaQueryWrapper<IllegalParking>()
@@ -77,8 +77,8 @@ public class ParkingServiceImpl implements ParkingService {
             BigDecimal avgPersonPriceDec = bigDecimal.divide(new BigDecimal(days), 2, RoundingMode.HALF_UP);
             avgPark = avgPersonPriceDec.doubleValue();
         }
+        long usedPark = parkMapper.pageUsedCount(iocParam);
         ThreadLocalRandom random = ThreadLocalRandom.current();
-        int unParking = random.nextInt(2,8);
         float compare = (float) Math.random();
         DecimalFormat decimalFormat = new DecimalFormat("#.0");
         compare = Float.parseFloat(decimalFormat.format(compare));
@@ -91,7 +91,7 @@ public class ParkingServiceImpl implements ParkingService {
         objects.get(2).put("value",total);
         objects.get(2).put("compare",-compare);
 
-        objects.get(3).put("value",80);
+        objects.get(3).put("value",totalParking-usedPark);
         objects.get(3).put("compare",1);
         indeicator.setWorthAttention("⼀⻋⼀位不乱停");
         indeicator.setList(objects);