|
@@ -0,0 +1,63 @@
|
|
|
|
+package com.sky.ioc.service.carbon.impl;
|
|
|
|
+
|
|
|
|
+import com.alibaba.fastjson.JSONObject;
|
|
|
|
+import com.sky.ioc.entity.Indeicator;
|
|
|
|
+import com.sky.ioc.entity.Label;
|
|
|
|
+import com.sky.ioc.entity.params.IocParam;
|
|
|
|
+import com.sky.ioc.mapper.carbon.CarCarbonMapper;
|
|
|
|
+import com.sky.ioc.service.carbon.CarCarbonService;
|
|
|
|
+import com.sky.ioc.tool.DateUtil;
|
|
|
|
+import com.sky.ioc.tool.GeneralMethod;
|
|
|
|
+import com.sky.ioc.tool.MathUtils;
|
|
|
|
+import com.sky.ioc.tool.ReturnMsg;
|
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
|
+
|
|
|
|
+import java.text.DecimalFormat;
|
|
|
|
+import java.util.List;
|
|
|
|
+
|
|
|
|
+@Service
|
|
|
|
+public class CarCarbonServiceImpl implements CarCarbonService {
|
|
|
|
+
|
|
|
|
+ @Autowired
|
|
|
|
+ CarCarbonMapper carCarbonMapper;
|
|
|
|
+
|
|
|
|
+ @Override
|
|
|
|
+ public ReturnMsg getVehicleCoreIndicators(IocParam iocParam) {
|
|
|
|
+ Indeicator indeicator = new Indeicator();
|
|
|
|
+ List<JSONObject> objects = indeicator.getList();
|
|
|
|
+ int days = DateUtil.daysBetween(iocParam.getTimeRange().getStartDate(),iocParam.getTimeRange().getEndDate());
|
|
|
|
+ long totalMile = carCarbonMapper.getMileageByTime(iocParam);
|
|
|
|
+ long totalDischarge = carCarbonMapper.getDischargeByTime(iocParam);
|
|
|
|
+ long totalHours = carCarbonMapper.getHoursByTime(iocParam);
|
|
|
|
+ float compare = (float) Math.random();
|
|
|
|
+ DecimalFormat decimalFormat = new DecimalFormat("#.0");
|
|
|
|
+ compare = Float.parseFloat(decimalFormat.format(compare));
|
|
|
|
+
|
|
|
|
+ objects.get(0).put("value",totalMile);
|
|
|
|
+ objects.get(0).put("compare",compare);
|
|
|
|
+
|
|
|
|
+ objects.get(1).put("value", MathUtils.division(totalMile,days,2));
|
|
|
|
+ objects.get(1).put("compare",compare);
|
|
|
|
+
|
|
|
|
+ objects.get(2).put("value",MathUtils.division(totalHours,days,2));
|
|
|
|
+ objects.get(2).put("compare",compare);
|
|
|
|
+
|
|
|
|
+ objects.get(3).put("value",MathUtils.division(totalDischarge,days,2));
|
|
|
|
+ objects.get(3).put("compare",compare);
|
|
|
|
+ indeicator.setWorthAttention("节能减排绿色出行");
|
|
|
|
+ indeicator.setList(objects);
|
|
|
|
+ return ReturnMsg.ok(indeicator);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @Override
|
|
|
|
+ public ReturnMsg getVehicleInfo(IocParam iocParam) {
|
|
|
|
+ String[] param = {"中迅","北京规划院","郑分","广分","上分","成分"};
|
|
|
|
+ String startStr = iocParam.getTimeRange().getStartDate();
|
|
|
|
+ String endStr = iocParam.getTimeRange().getEndDate();
|
|
|
|
+ List<String> lists = DateUtil.getBetweenDays(startStr, endStr);
|
|
|
|
+ String[] labKey = lists.toArray(new String[0]);
|
|
|
|
+ List<Label> labels1 = GeneralMethod.getInstance().dataGeneration(param, labKey);
|
|
|
|
+ return ReturnMsg.ok(labels1);
|
|
|
|
+ }
|
|
|
|
+}
|