|
@@ -0,0 +1,822 @@
|
|
|
+package com.gyee.runeconomy.service.homepage;
|
|
|
+
|
|
|
+
|
|
|
+import com.gyee.common.util.DateUtils;
|
|
|
+import com.gyee.runeconomy.dto.response.EconHomePagePointRateDTO;
|
|
|
+import com.gyee.runeconomy.model.auto.*;
|
|
|
+import com.gyee.runeconomy.service.auto.*;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+
|
|
|
+import java.math.BigDecimal;
|
|
|
+import java.text.ParseException;
|
|
|
+import java.text.SimpleDateFormat;
|
|
|
+import java.util.*;
|
|
|
+
|
|
|
+/**
|
|
|
+ * 经济运行首页服务类
|
|
|
+ */
|
|
|
+@Service
|
|
|
+public class EconomyPointHomePageService {
|
|
|
+
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private IProEconPowerstationInfoDay1Service proEconPowerstationInfoDay1Service;//场站五损电量
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private IProEconPowerstationInfoDay2Service proEconPowerstationInfoDay2Service;//场站五损时间
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private IProEconPowerstationInfoDay4Service proEconPowerstationInfoDay4Service;//场站三率mtbf
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private IProEconPowerstationInfoDay5Service proEconPowerstationInfoDay5Service;//电表发电量
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private IProEconPowerstationInfoDay6Service proEconPowerstationInfoDay6Service;//测风塔出线功率
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private IProBasicCompanyService proBasicCompanyService;
|
|
|
+
|
|
|
+ private IProBasicPowerstationService proBasicPowerstationService;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 指标率相应类
|
|
|
+ */
|
|
|
+ private EconHomePagePointRateDTO dto = new EconHomePagePointRateDTO();
|
|
|
+ /**
|
|
|
+ * 五损
|
|
|
+ */
|
|
|
+ private Map<String, ProEconPowerstationInfoDay1> wsmap = new HashMap<>();
|
|
|
+ /**
|
|
|
+ * 三率
|
|
|
+ */
|
|
|
+ private Map<String, ProEconPowerstationInfoDay4> slmap = new HashMap<>();
|
|
|
+ /**
|
|
|
+ * 电量
|
|
|
+ */
|
|
|
+ private Map<String, ProEconPowerstationInfoDay5> dlmap = new HashMap<>();
|
|
|
+ /**
|
|
|
+ * 功率
|
|
|
+ */
|
|
|
+ private Map<String, ProEconPowerstationInfoDay6> glmap = new HashMap<>();
|
|
|
+ /**
|
|
|
+ * 五损时间
|
|
|
+ */
|
|
|
+ private Map<String, ProEconPowerstationInfoDay2> wstimemap = new HashMap<>();
|
|
|
+
|
|
|
+
|
|
|
+ /** 综合场用电率 */
|
|
|
+ private List<ProEconPowerstationInfoDay5> zhcydllist = new ArrayList<>();
|
|
|
+
|
|
|
+ /** 电量统计分析 */
|
|
|
+ private List<ProEconPowerstationInfoDay1> dltjfxlist = new ArrayList<>();
|
|
|
+
|
|
|
+ private BigDecimal capacity = null;
|
|
|
+
|
|
|
+ private Map<String,BigDecimal> wsdlfx = null;//五损电量分析
|
|
|
+
|
|
|
+ private Map<String,BigDecimal> zhcydl = null;//综合场用电率
|
|
|
+
|
|
|
+ private List<Map<String,BigDecimal>> dltjfxList = null;//电量统计分析
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 装机容量
|
|
|
+ */
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 经济运行首页聚合方法
|
|
|
+ *
|
|
|
+ * @param regionId
|
|
|
+ * @param companyId
|
|
|
+ * @param windpowerstationId
|
|
|
+ * @param projectId
|
|
|
+ * @param lineId
|
|
|
+ * @param staType
|
|
|
+ * @param dateType
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public EconHomePagePointRateDTO getEconomyPointHomePageInfo(String regionId, String companyId, String windpowerstationId, String projectId, String lineId, String staType, String dateType) throws ParseException {
|
|
|
+ //获取当前时间
|
|
|
+ String date = DateUtils.toDate1(new Date());
|
|
|
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
|
|
+ Date date3 = sdf.parse(date);
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ /** 五损 */
|
|
|
+ wsmap = proEconPowerstationInfoDay1Service.getEconFiveLoss(regionId, companyId, windpowerstationId, projectId, lineId, staType, dateType, date3);
|
|
|
+
|
|
|
+ /** 三率 */
|
|
|
+ slmap = proEconPowerstationInfoDay4Service.getEconThreeRate(regionId, companyId, windpowerstationId, projectId, lineId, staType, dateType, date);
|
|
|
+
|
|
|
+ /** 综合场用电量 */
|
|
|
+ dlmap = proEconPowerstationInfoDay5Service.getEconElectricQuantity(regionId, companyId, windpowerstationId, projectId, lineId, staType, dateType, date);
|
|
|
+
|
|
|
+ /** 场功率 */
|
|
|
+ glmap = proEconPowerstationInfoDay6Service.getEconPowerOfField(regionId, companyId, windpowerstationId, projectId, lineId, staType, dateType, date);
|
|
|
+
|
|
|
+ /** 五损时间 */
|
|
|
+ wstimemap = proEconPowerstationInfoDay2Service.getEconFiveLossTime(regionId, companyId, windpowerstationId, projectId, lineId, staType, dateType, date);
|
|
|
+
|
|
|
+ //装机容量
|
|
|
+ capacity = proBasicCompanyService.getProBasicCompanyCapacity(regionId, companyId);
|
|
|
+ //综合场用电量、
|
|
|
+ zhcydllist = proEconPowerstationInfoDay5Service.getEconZhcydldb(regionId, companyId, windpowerstationId, projectId, lineId, staType, dateType, date);
|
|
|
+
|
|
|
+ //电量统计分析
|
|
|
+ dltjfxlist = proEconPowerstationInfoDay1Service.getEconFiveLosslist(regionId, companyId, windpowerstationId, projectId, lineId, staType, dateType, date);
|
|
|
+
|
|
|
+
|
|
|
+ /** 场站信息 */
|
|
|
+ List<ProBasicPowerstation> powerstationList = proBasicPowerstationService.getProBasicPowerstationlist(regionId,companyId,windpowerstationId,staType);
|
|
|
+ wsdlfx = new HashMap<>();//五损电量分析
|
|
|
+ zhcydl= new HashMap<>();//综合场用电率
|
|
|
+ dltjfxList = new ArrayList<>();//电量统计分析
|
|
|
+ switch (dateType) {
|
|
|
+
|
|
|
+ case "r":
|
|
|
+ currFiveInfo();
|
|
|
+ currThreeRateInfo();
|
|
|
+ currOtherInfo();
|
|
|
+ currFiveDlFx();
|
|
|
+ currZhcydl();
|
|
|
+ currDltjfx();
|
|
|
+
|
|
|
+
|
|
|
+ break;
|
|
|
+ case "y":
|
|
|
+ monthFiveInfo();
|
|
|
+ monthThreeRateInfo();
|
|
|
+ monthOtherInfo();
|
|
|
+ monthFiveDlFx();
|
|
|
+ monthZhcydl();
|
|
|
+ monthDltjfx();
|
|
|
+
|
|
|
+
|
|
|
+ break;
|
|
|
+ case "n":
|
|
|
+ yearFiveInfo();
|
|
|
+ yearThreeRateInfo();
|
|
|
+ yearOtherInfo();
|
|
|
+ yearFiveDlFx();
|
|
|
+ yearZhcydl();
|
|
|
+ yearDltjfx();
|
|
|
+
|
|
|
+ break;
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ return dto;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 电量统计分析
|
|
|
+ */
|
|
|
+
|
|
|
+ private void currDltjfx() {
|
|
|
+
|
|
|
+ dltjfxlist.stream().forEach(i -> {
|
|
|
+ Map<String, BigDecimal> m = new HashMap<>();
|
|
|
+ m.put("fdl", i.getRfdl()); //发电量
|
|
|
+ m.put("sldl", i.getRcwsldwssdl().add(i.getRcwsltqssdl())); //受累
|
|
|
+ m.put("jxdl", i.getRjxssdl()); //检修
|
|
|
+ m.put("xddl", i.getRxdtjssdl().add(i.getRxdjclssdl()));//限电
|
|
|
+ m.put("fgzdl", i.getRgzssdl()); //故障
|
|
|
+ m.put("xndl", i.getRxnssdl());//性能
|
|
|
+ dltjfxList.add(m);
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ private void monthDltjfx() {
|
|
|
+ dltjfxlist.stream().forEach(i -> {
|
|
|
+ Map<String, BigDecimal> m = new HashMap<>();
|
|
|
+ m.put("fdl", i.getYfdl()); //发电量
|
|
|
+ m.put("sldl", i.getYcwsldwssdl().add(i.getRcwsltqssdl())); //受累
|
|
|
+ m.put("jxdl", i.getYjxssdl()); //检修
|
|
|
+ m.put("xddl", i.getYxdtjssdl().add(i.getRxdjclssdl()));//限电
|
|
|
+ m.put("fgzdl", i.getYgzssdl()); //故障
|
|
|
+ m.put("xndl", i.getYxnssdl());//性能
|
|
|
+ dltjfxList.add(m);
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ private void yearDltjfx() {
|
|
|
+ dltjfxlist.stream().forEach(i -> {
|
|
|
+ Map<String, BigDecimal> m = new HashMap<>();
|
|
|
+ m.put("fdl", i.getNfdl()); //发电量
|
|
|
+ m.put("sldl", i.getNcwsldwssdl().add(i.getRcwsltqssdl())); //受累
|
|
|
+ m.put("jxdl", i.getNjxssdl()); //检修
|
|
|
+ m.put("xddl", i.getNxdtjssdl().add(i.getRxdjclssdl()));//限电
|
|
|
+ m.put("fgzdl", i.getNgzssdl()); //故障
|
|
|
+ m.put("xndl", i.getNxnssdl());//性能
|
|
|
+ dltjfxList.add(m);
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ /**综合厂用电率 */
|
|
|
+ private void currZhcydl(){
|
|
|
+ zhcydllist.stream().forEach(i->{
|
|
|
+ zhcydl.put(DateUtils.toDate1(i.getRecordDate()),i.getRzhcydldb().divide(i.getRfdldb(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ private void monthZhcydl(){
|
|
|
+ zhcydllist.stream().forEach(i->{
|
|
|
+ zhcydl.put(DateUtils.toDate1(i.getRecordDate()),i.getYzhcydldb().divide(i.getYfdldb(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ private void yearZhcydl(){
|
|
|
+ zhcydllist.stream().forEach(i->{
|
|
|
+ zhcydl.put(DateUtils.toDate1(i.getRecordDate()),i.getNzhcydldb().divide(i.getNfdldb(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ /** 损失电量分析*/
|
|
|
+ private void currFiveDlFx() {
|
|
|
+ ProEconPowerstationInfoDay1 fiveInfo = wsmap.get("currFiveInfo");
|
|
|
+
|
|
|
+ //发电量
|
|
|
+ wsdlfx.put("fdl", fiveInfo.getRfdl().divide(fiveInfo.getRllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+ //受累
|
|
|
+ wsdlfx.put("sldl", (fiveInfo.getRcwsldwssdl().add(fiveInfo.getRcwsltqssdl())).divide(fiveInfo.getRllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+ //检修
|
|
|
+ wsdlfx.put("jxdl", fiveInfo.getRjxssdl().divide(fiveInfo.getRllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+ //限电
|
|
|
+ wsdlfx.put("xddl", (fiveInfo.getRxdtjssdl().add(fiveInfo.getRxdjclssdl())).divide(fiveInfo.getRllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+ //故障
|
|
|
+ wsdlfx.put("fgzdl", fiveInfo.getRgzssdl().divide(fiveInfo.getRllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+ //性能
|
|
|
+ wsdlfx.put("xndl", fiveInfo.getRxnssdl().divide(fiveInfo.getRllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+
|
|
|
+ }
|
|
|
+ private void monthFiveDlFx() {
|
|
|
+ ProEconPowerstationInfoDay1 fiveInfo = wsmap.get("currFiveInfo");
|
|
|
+ //发电量
|
|
|
+ wsdlfx.put("fdl", fiveInfo.getYfdl().divide(fiveInfo.getYllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+ //受累
|
|
|
+ wsdlfx.put("sldl", (fiveInfo.getYcwsldwssdl().add(fiveInfo.getYcwsltqssdl())).divide(fiveInfo.getYllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+ //检修
|
|
|
+ wsdlfx.put("jxdl", fiveInfo.getYjxssdl().divide(fiveInfo.getYllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+ //限电
|
|
|
+ wsdlfx.put("xddl", (fiveInfo.getYxdtjssdl().add(fiveInfo.getYxdjclssdl())).divide(fiveInfo.getYllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+ //故障
|
|
|
+ wsdlfx.put("fgzdl", fiveInfo.getYgzssdl().divide(fiveInfo.getYllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+ //性能
|
|
|
+ wsdlfx.put("xndl", fiveInfo.getYxnssdl().divide(fiveInfo.getYllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ private void yearFiveDlFx() {
|
|
|
+ ProEconPowerstationInfoDay1 fiveInfo = wsmap.get("currFiveInfo");
|
|
|
+ //发电量
|
|
|
+ wsdlfx.put("fdl", fiveInfo.getNfdl().divide(fiveInfo.getNllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+ //受累
|
|
|
+ wsdlfx.put("sldl", (fiveInfo.getNcwsldwssdl().add(fiveInfo.getNcwsltqssdl())).divide(fiveInfo.getNllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+ //检修
|
|
|
+ wsdlfx.put("jxdl", fiveInfo.getNjxssdl().divide(fiveInfo.getNllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+ //限电
|
|
|
+ wsdlfx.put("xddl", (fiveInfo.getNxdtjssdl().add(fiveInfo.getNxdjclssdl())).divide(fiveInfo.getNllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+ //故障
|
|
|
+ wsdlfx.put("fgzdl", fiveInfo.getNgzssdl().divide(fiveInfo.getNllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+ //性能
|
|
|
+ wsdlfx.put("xndl", fiveInfo.getNxnssdl().divide(fiveInfo.getNllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 五损经济指标
|
|
|
+ */
|
|
|
+ private void currFiveInfo() {
|
|
|
+ ProEconPowerstationInfoDay1 currFiveInfo = wsmap.get("currFiveInfo");
|
|
|
+ ProEconPowerstationInfoDay1 ringFiveInfo = wsmap.get("ringFiveInfo");
|
|
|
+ ProEconPowerstationInfoDay1 withFiveInfo = wsmap.get("withFiveInfo");
|
|
|
+
|
|
|
+ if (null != currFiveInfo) {
|
|
|
+ BigDecimal currgzsll = currFiveInfo.getRgzssdl().divide(currFiveInfo.getRllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal currjxsll = currFiveInfo.getRjxssdl().divide(currFiveInfo.getRllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal currxdsll = (currFiveInfo.getRxdtjssdl().add(currFiveInfo.getRxdjclssdl())).divide(currFiveInfo.getRllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal currslsll = (currFiveInfo.getRcnslgzssdl().add(currFiveInfo.getRcnsljxssdl())).divide(currFiveInfo.getRllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal currxnsll = currFiveInfo.getRxnssdl().divide(currFiveInfo.getRllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+
|
|
|
+ dto.setCurrGzsll(currgzsll);
|
|
|
+ dto.setCurrGzsll(currjxsll);
|
|
|
+ dto.setCurrGzsll(currxdsll);
|
|
|
+ dto.setCurrGzsll(currslsll);
|
|
|
+ dto.setCurrGzsll(currxnsll);
|
|
|
+
|
|
|
+
|
|
|
+ if (null != ringFiveInfo) {
|
|
|
+ BigDecimal ringgzsll = ringFiveInfo.getRgzssdl().divide(ringFiveInfo.getRllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal ringjxsll = ringFiveInfo.getRjxssdl().divide(ringFiveInfo.getRllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal ringxdsll = (ringFiveInfo.getRxdtjssdl().add(ringFiveInfo.getRxdjclssdl())).divide(ringFiveInfo.getRllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal ringslsll = (ringFiveInfo.getRcnslgzssdl().add(ringFiveInfo.getRcnsljxssdl())).divide(ringFiveInfo.getRllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal ringxnsll = ringFiveInfo.getRxnssdl().divide(ringFiveInfo.getRllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+
|
|
|
+ BigDecimal ringGzslzzl = currgzsll.subtract(ringgzsll).divide(ringgzsll, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal ringjxslzzl = currjxsll.subtract(ringjxsll).divide(ringjxsll, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal ringxdslzzl = currxdsll.subtract(ringxdsll).divide(ringxdsll, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal ringslslzzl = currslsll.subtract(ringslsll).divide(ringslsll, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal ringxnslzzl = currxnsll.subtract(ringxnsll).divide(ringxnsll, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+
|
|
|
+ dto.setRingGzslzzl(ringGzslzzl);
|
|
|
+ dto.setRingGzslzzl(ringjxslzzl);
|
|
|
+ dto.setRingGzslzzl(ringxdslzzl);
|
|
|
+ dto.setRingGzslzzl(ringslslzzl);
|
|
|
+ dto.setRingGzslzzl(ringxnslzzl);
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ if (null != withFiveInfo) {
|
|
|
+ BigDecimal withgzsll = withFiveInfo.getRgzssdl().divide(withFiveInfo.getRllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal withjxsll = withFiveInfo.getRjxssdl().divide(withFiveInfo.getRllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal withxdsll = (withFiveInfo.getRxdtjssdl().add(withFiveInfo.getRxdjclssdl())).divide(withFiveInfo.getRllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal withslsll = (withFiveInfo.getRcnslgzssdl().add(withFiveInfo.getRcnsljxssdl())).divide(withFiveInfo.getRllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal withxnsll = withFiveInfo.getRxnssdl().divide(withFiveInfo.getRllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+
|
|
|
+ BigDecimal withGzslzzl = currgzsll.subtract(withgzsll).divide(withgzsll, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal withjxslzzl = currjxsll.subtract(withjxsll).divide(withjxsll, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal withxdslzzl = currxdsll.subtract(withxdsll).divide(withxdsll, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal withslslzzl = currslsll.subtract(withslsll).divide(withslsll, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal withxnslzzl = currxnsll.subtract(withxnsll).divide(withxnsll, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+
|
|
|
+ dto.setWithGzslzzl(withGzslzzl);
|
|
|
+ dto.setWithGzslzzl(withjxslzzl);
|
|
|
+ dto.setWithGzslzzl(withxdslzzl);
|
|
|
+ dto.setWithGzslzzl(withslslzzl);
|
|
|
+ dto.setWithGzslzzl(withxnslzzl);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ private void monthFiveInfo() {
|
|
|
+ ProEconPowerstationInfoDay1 currFiveInfo = wsmap.get("currFiveInfo");
|
|
|
+ ProEconPowerstationInfoDay1 ringFiveInfo = wsmap.get("ringFiveInfo");
|
|
|
+ ProEconPowerstationInfoDay1 withFiveInfo = wsmap.get("withFiveInfo");
|
|
|
+
|
|
|
+ if (null != currFiveInfo) {
|
|
|
+ BigDecimal currgzsll = currFiveInfo.getYgzssdl().divide(currFiveInfo.getYllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal currjxsll = currFiveInfo.getYjxssdl().divide(currFiveInfo.getYllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal currxdsll = (currFiveInfo.getYxdtjssdl().add(currFiveInfo.getYxdjclssdl())).divide(currFiveInfo.getYllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal currslsll = (currFiveInfo.getYcnslgzssdl().add(currFiveInfo.getYcnsljxssdl())).divide(currFiveInfo.getYllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal currxnsll = currFiveInfo.getYxnssdl().divide(currFiveInfo.getYllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+
|
|
|
+ dto.setCurrGzsll(currgzsll);
|
|
|
+ dto.setCurrGzsll(currjxsll);
|
|
|
+ dto.setCurrGzsll(currxdsll);
|
|
|
+ dto.setCurrGzsll(currslsll);
|
|
|
+ dto.setCurrGzsll(currxnsll);
|
|
|
+
|
|
|
+
|
|
|
+ if (null != ringFiveInfo) {
|
|
|
+ BigDecimal ringgzsll = ringFiveInfo.getYgzssdl().divide(ringFiveInfo.getYllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal ringjxsll = ringFiveInfo.getYjxssdl().divide(ringFiveInfo.getYllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal ringxdsll = (ringFiveInfo.getYxdtjssdl().add(ringFiveInfo.getYxdjclssdl())).divide(ringFiveInfo.getYllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal ringslsll = (ringFiveInfo.getYcnslgzssdl().add(ringFiveInfo.getYcnsljxssdl())).divide(ringFiveInfo.getYllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal ringxnsll = ringFiveInfo.getYxnssdl().divide(ringFiveInfo.getYllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+
|
|
|
+ BigDecimal ringGzslzzl = currgzsll.subtract(ringgzsll).divide(ringgzsll, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal ringjxslzzl = currjxsll.subtract(ringjxsll).divide(ringjxsll, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal ringxdslzzl = currxdsll.subtract(ringxdsll).divide(ringxdsll, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal ringslslzzl = currslsll.subtract(ringslsll).divide(ringslsll, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal ringxnslzzl = currxnsll.subtract(ringxnsll).divide(ringxnsll, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+
|
|
|
+ dto.setRingGzslzzl(ringGzslzzl);
|
|
|
+ dto.setRingGzslzzl(ringjxslzzl);
|
|
|
+ dto.setRingGzslzzl(ringxdslzzl);
|
|
|
+ dto.setRingGzslzzl(ringslslzzl);
|
|
|
+ dto.setRingGzslzzl(ringxnslzzl);
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ if (null != withFiveInfo) {
|
|
|
+ BigDecimal withgzsll = withFiveInfo.getYgzssdl().divide(withFiveInfo.getYllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal withjxsll = withFiveInfo.getYjxssdl().divide(withFiveInfo.getYllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal withxdsll = (withFiveInfo.getYxdtjssdl().add(withFiveInfo.getYxdjclssdl())).divide(withFiveInfo.getYllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal withslsll = (withFiveInfo.getYcnslgzssdl().add(withFiveInfo.getYcnsljxssdl())).divide(withFiveInfo.getYllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal withxnsll = withFiveInfo.getYxnssdl().divide(withFiveInfo.getYllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+
|
|
|
+ BigDecimal withGzslzzl = currgzsll.subtract(withgzsll).divide(withgzsll, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal withjxslzzl = currjxsll.subtract(withjxsll).divide(withjxsll, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal withxdslzzl = currxdsll.subtract(withxdsll).divide(withxdsll, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal withslslzzl = currslsll.subtract(withslsll).divide(withslsll, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal withxnslzzl = currxnsll.subtract(withxnsll).divide(withxnsll, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+
|
|
|
+ dto.setWithGzslzzl(withGzslzzl);
|
|
|
+ dto.setWithGzslzzl(withjxslzzl);
|
|
|
+ dto.setWithGzslzzl(withxdslzzl);
|
|
|
+ dto.setWithGzslzzl(withslslzzl);
|
|
|
+ dto.setWithGzslzzl(withxnslzzl);
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ private void yearFiveInfo() {
|
|
|
+
|
|
|
+ ProEconPowerstationInfoDay1 currFiveInfo = wsmap.get("currFiveInfo");
|
|
|
+ ProEconPowerstationInfoDay1 ringFiveInfo = wsmap.get("ringFiveInfo");
|
|
|
+ ProEconPowerstationInfoDay1 withFiveInfo = wsmap.get("withFiveInfo");
|
|
|
+
|
|
|
+ if (null != currFiveInfo) {
|
|
|
+ BigDecimal currgzsll = currFiveInfo.getNgzssdl().divide(currFiveInfo.getNllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal currjxsll = currFiveInfo.getNjxssdl().divide(currFiveInfo.getNllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal currxdsll = (currFiveInfo.getNxdtjssdl().add(currFiveInfo.getNxdjclssdl())).divide(currFiveInfo.getNllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal currslsll = (currFiveInfo.getNcnslgzssdl().add(currFiveInfo.getNcnsljxssdl())).divide(currFiveInfo.getNllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal currxnsll = currFiveInfo.getNxnssdl().divide(currFiveInfo.getNllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+
|
|
|
+ dto.setCurrGzsll(currgzsll);
|
|
|
+ dto.setCurrGzsll(currjxsll);
|
|
|
+ dto.setCurrGzsll(currxdsll);
|
|
|
+ dto.setCurrGzsll(currslsll);
|
|
|
+ dto.setCurrGzsll(currxnsll);
|
|
|
+
|
|
|
+
|
|
|
+ if (null != ringFiveInfo) {
|
|
|
+ BigDecimal ringgzsll = ringFiveInfo.getNgzssdl().divide(ringFiveInfo.getNllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal ringjxsll = ringFiveInfo.getNjxssdl().divide(ringFiveInfo.getNllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal ringxdsll = (ringFiveInfo.getNxdtjssdl().add(ringFiveInfo.getNxdjclssdl())).divide(ringFiveInfo.getNllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal ringslsll = (ringFiveInfo.getNcnslgzssdl().add(ringFiveInfo.getNcnsljxssdl())).divide(ringFiveInfo.getNllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal ringxnsll = ringFiveInfo.getNxnssdl().divide(ringFiveInfo.getNllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+
|
|
|
+ BigDecimal ringGzslzzl = currgzsll.subtract(ringgzsll).divide(ringgzsll, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal ringjxslzzl = currjxsll.subtract(ringjxsll).divide(ringjxsll, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal ringxdslzzl = currxdsll.subtract(ringxdsll).divide(ringxdsll, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal ringslslzzl = currslsll.subtract(ringslsll).divide(ringslsll, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal ringxnslzzl = currxnsll.subtract(ringxnsll).divide(ringxnsll, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+
|
|
|
+ dto.setRingGzslzzl(ringGzslzzl);
|
|
|
+ dto.setRingGzslzzl(ringjxslzzl);
|
|
|
+ dto.setRingGzslzzl(ringxdslzzl);
|
|
|
+ dto.setRingGzslzzl(ringslslzzl);
|
|
|
+ dto.setRingGzslzzl(ringxnslzzl);
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ if (null != withFiveInfo) {
|
|
|
+ BigDecimal withgzsll = withFiveInfo.getNgzssdl().divide(withFiveInfo.getNllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal withjxsll = withFiveInfo.getNjxssdl().divide(withFiveInfo.getNllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal withxdsll = (withFiveInfo.getNxdtjssdl().add(withFiveInfo.getNxdjclssdl())).divide(withFiveInfo.getNllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal withslsll = (withFiveInfo.getNcnslgzssdl().add(withFiveInfo.getNcnsljxssdl())).divide(withFiveInfo.getNllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal withxnsll = withFiveInfo.getNxnssdl().divide(withFiveInfo.getNllfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+
|
|
|
+ BigDecimal withGzslzzl = currgzsll.subtract(withgzsll).divide(withgzsll, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal withjxslzzl = currjxsll.subtract(withjxsll).divide(withjxsll, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal withxdslzzl = currxdsll.subtract(withxdsll).divide(withxdsll, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal withslslzzl = currslsll.subtract(withslsll).divide(withslsll, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal withxnslzzl = currxnsll.subtract(withxnsll).divide(withxnsll, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+
|
|
|
+ dto.setWithGzslzzl(withGzslzzl);
|
|
|
+ dto.setWithGzslzzl(withjxslzzl);
|
|
|
+ dto.setWithGzslzzl(withxdslzzl);
|
|
|
+ dto.setWithGzslzzl(withslslzzl);
|
|
|
+ dto.setWithGzslzzl(withxnslzzl);
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 三率经济指标
|
|
|
+ */
|
|
|
+ private void currThreeRateInfo() {
|
|
|
+ ProEconPowerstationInfoDay4 currThreeInfo = slmap.get("currThreeInfo");
|
|
|
+ ProEconPowerstationInfoDay4 ringThreeInfo = slmap.get("ringThreeInfo");
|
|
|
+ ProEconPowerstationInfoDay4 withThreeInfo = slmap.get("withThreeInfo");
|
|
|
+
|
|
|
+ if (null != currThreeInfo) {
|
|
|
+
|
|
|
+ dto.setCurrFwjsl(currThreeInfo.getRfwjsl());
|
|
|
+ dto.setCurrZtzhl(currThreeInfo.getRztzhjsl());
|
|
|
+ dto.setCurrXqjsl(currThreeInfo.getRgzxqjsl());
|
|
|
+
|
|
|
+
|
|
|
+ if (null != ringThreeInfo) {
|
|
|
+
|
|
|
+ dto.setRingFwjszzl((currThreeInfo.getRfwjsl().subtract(ringThreeInfo.getRfwjsl())).divide(ringThreeInfo.getRfwjsl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+ dto.setRingZtzhzzl((currThreeInfo.getRztzhjsl().subtract(ringThreeInfo.getRztzhjsl())).divide(ringThreeInfo.getRztzhjsl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+ dto.setRingXqjszzl((currThreeInfo.getRgzxqjsl().subtract(ringThreeInfo.getRgzxqjsl())).divide(ringThreeInfo.getRgzxqjsl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ if (null != withThreeInfo) {
|
|
|
+
|
|
|
+ dto.setWithFwjszzl((currThreeInfo.getRfwjsl().subtract(withThreeInfo.getRfwjsl())).divide(withThreeInfo.getRfwjsl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+ dto.setWithZtzhzzl((currThreeInfo.getRztzhjsl().subtract(withThreeInfo.getRztzhjsl())).divide(withThreeInfo.getRztzhjsl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+ dto.setWithXqjszzl((currThreeInfo.getRgzxqjsl().subtract(withThreeInfo.getRgzxqjsl())).divide(withThreeInfo.getRgzxqjsl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ private void monthThreeRateInfo() {
|
|
|
+ ProEconPowerstationInfoDay4 currThreeInfo = slmap.get("currThreeInfo");
|
|
|
+ ProEconPowerstationInfoDay4 ringThreeInfo = slmap.get("ringThreeInfo");
|
|
|
+ ProEconPowerstationInfoDay4 withThreeInfo = slmap.get("withThreeInfo");
|
|
|
+
|
|
|
+ if (null != currThreeInfo) {
|
|
|
+
|
|
|
+ dto.setCurrFwjsl(currThreeInfo.getYfwjsl());
|
|
|
+ dto.setCurrZtzhl(currThreeInfo.getYztzhjsl());
|
|
|
+ dto.setCurrXqjsl(currThreeInfo.getYgzxqjsl());
|
|
|
+
|
|
|
+
|
|
|
+ if (null != ringThreeInfo) {
|
|
|
+
|
|
|
+ dto.setRingFwjszzl((currThreeInfo.getYfwjsl().subtract(ringThreeInfo.getYfwjsl())).divide(ringThreeInfo.getYfwjsl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+ dto.setRingZtzhzzl((currThreeInfo.getYztzhjsl().subtract(ringThreeInfo.getYztzhjsl())).divide(ringThreeInfo.getYztzhjsl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+ dto.setRingXqjszzl((currThreeInfo.getYgzxqjsl().subtract(ringThreeInfo.getYgzxqjsl())).divide(ringThreeInfo.getYgzxqjsl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ if (null != withThreeInfo) {
|
|
|
+
|
|
|
+ dto.setWithFwjszzl((currThreeInfo.getYfwjsl().subtract(withThreeInfo.getYfwjsl())).divide(withThreeInfo.getYfwjsl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+ dto.setWithZtzhzzl((currThreeInfo.getYztzhjsl().subtract(withThreeInfo.getYztzhjsl())).divide(withThreeInfo.getYztzhjsl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+ dto.setWithXqjszzl((currThreeInfo.getYgzxqjsl().subtract(withThreeInfo.getYgzxqjsl())).divide(withThreeInfo.getYgzxqjsl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ private void yearThreeRateInfo() {
|
|
|
+ ProEconPowerstationInfoDay4 currThreeInfo = slmap.get("currThreeInfo");
|
|
|
+ ProEconPowerstationInfoDay4 ringThreeInfo = slmap.get("ringThreeInfo");
|
|
|
+ ProEconPowerstationInfoDay4 withThreeInfo = slmap.get("withThreeInfo");
|
|
|
+
|
|
|
+ if (null != currThreeInfo) {
|
|
|
+
|
|
|
+ dto.setCurrFwjsl(currThreeInfo.getNfwjsl());
|
|
|
+ dto.setCurrZtzhl(currThreeInfo.getNztzhjsl());
|
|
|
+ dto.setCurrXqjsl(currThreeInfo.getNgzxqjsl());
|
|
|
+
|
|
|
+
|
|
|
+ if (null != ringThreeInfo) {
|
|
|
+
|
|
|
+ dto.setRingFwjszzl((currThreeInfo.getNfwjsl().subtract(ringThreeInfo.getNfwjsl())).divide(ringThreeInfo.getNfwjsl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+ dto.setRingZtzhzzl((currThreeInfo.getNztzhjsl().subtract(ringThreeInfo.getNztzhjsl())).divide(ringThreeInfo.getNztzhjsl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+ dto.setRingXqjszzl((currThreeInfo.getNgzxqjsl().subtract(ringThreeInfo.getNgzxqjsl())).divide(ringThreeInfo.getNgzxqjsl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ if (null != withThreeInfo) {
|
|
|
+
|
|
|
+ dto.setWithFwjszzl((currThreeInfo.getNfwjsl().subtract(withThreeInfo.getNfwjsl())).divide(withThreeInfo.getNfwjsl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+ dto.setWithZtzhzzl((currThreeInfo.getNztzhjsl().subtract(withThreeInfo.getNztzhjsl())).divide(withThreeInfo.getNztzhjsl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+ dto.setWithXqjszzl((currThreeInfo.getNgzxqjsl().subtract(withThreeInfo.getNgzxqjsl())).divide(withThreeInfo.getNgzxqjsl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 其它经济指标
|
|
|
+ */
|
|
|
+ private void currOtherInfo() {
|
|
|
+
|
|
|
+ ProEconPowerstationInfoDay1 currFiveInfo = wsmap.get("currFiveInfo");
|
|
|
+ ProEconPowerstationInfoDay1 ringFiveInfo = wsmap.get("ringFiveInfo");
|
|
|
+ ProEconPowerstationInfoDay1 withFiveInfo = wsmap.get("withFiveInfo");
|
|
|
+
|
|
|
+ ProEconPowerstationInfoDay5 currDlInfo = dlmap.get("currDlInfo");
|
|
|
+ ProEconPowerstationInfoDay5 ringDlInfo = dlmap.get("ringDlInfo");
|
|
|
+ ProEconPowerstationInfoDay5 withDlInfo = dlmap.get("withDlInfo");
|
|
|
+
|
|
|
+ ProEconPowerstationInfoDay6 currGlInfo = glmap.get("currGlInfo");
|
|
|
+ ProEconPowerstationInfoDay6 ringGlInfo = glmap.get("ringGlInfo");
|
|
|
+ ProEconPowerstationInfoDay6 withGlInfo = glmap.get("withGlInfo");
|
|
|
+
|
|
|
+ ProEconPowerstationInfoDay2 currTimeInfo = wstimemap.get("currTimeInfo");
|
|
|
+ ProEconPowerstationInfoDay2 ringTimeInfo = wstimemap.get("ringTimeInfo");
|
|
|
+ ProEconPowerstationInfoDay2 withTimeInfo = wstimemap.get("withTimeInfo");
|
|
|
+
|
|
|
+ if (null != currFiveInfo && null != currDlInfo) {
|
|
|
+
|
|
|
+ BigDecimal currZhcydl = currDlInfo.getRzhcydldb().divide(currFiveInfo.getRfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ dto.setCurrZhcydl(currZhcydl);
|
|
|
+
|
|
|
+ if (null != ringFiveInfo && null != ringDlInfo) {
|
|
|
+ BigDecimal ringZhcydl = ringDlInfo.getRzhcydldb().divide(ringFiveInfo.getRfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal ringZhcydzzl = (currZhcydl.subtract(ringZhcydl)).divide(ringZhcydl, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ dto.setRingZhcydzzl(ringZhcydzzl);
|
|
|
+ }
|
|
|
+
|
|
|
+ if (null != withFiveInfo && null != withDlInfo) {
|
|
|
+ BigDecimal withZhcydl = ringDlInfo.getRzhcydldb().divide(ringFiveInfo.getRfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal withZhcydzzl = (currZhcydl.subtract(withZhcydl)).divide(withZhcydl, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ dto.setWithZhcydzzl(withZhcydzzl);
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ if (null != currGlInfo) {
|
|
|
+ BigDecimal currGlqxfhl = currGlInfo.getRpjglcx().divide(capacity, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ dto.setCurrGlqxfhl(currGlqxfhl);
|
|
|
+ if (null != ringGlInfo) {
|
|
|
+ BigDecimal ringGlqxfhl = ringGlInfo.getRpjglcx().divide(capacity, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal ringGlqxfhzzl = (currGlqxfhl.subtract(ringGlqxfhl)).divide(ringGlqxfhl, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ dto.setRingGlqxfhzzl(ringGlqxfhzzl);
|
|
|
+ }
|
|
|
+ if (null != withGlInfo) {
|
|
|
+ BigDecimal withGlqxfhl = withGlInfo.getRpjglcx().divide(capacity, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal withGlqxfhzzl = (currGlqxfhl.subtract(withGlqxfhl)).divide(withGlqxfhl, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ dto.setWithGlqxfhzzl(withGlqxfhzzl);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ if (null != currTimeInfo) {
|
|
|
+
|
|
|
+ int currhours = DateUtils.hoursDiff(DateUtils.getStartOfDay(new Date()), new Date());
|
|
|
+ BigDecimal currhours2 = new BigDecimal(0.00).valueOf((int) currhours);
|
|
|
+ BigDecimal currSbklyl = currhours2.subtract((currTimeInfo.getRhjgzxsmx().add(currTimeInfo.getRhjjxtjxs()))).divide(currhours2, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ dto.setCurrSbklyl(currSbklyl);
|
|
|
+ if (null != ringTimeInfo) {
|
|
|
+
|
|
|
+ int ringhours = DateUtils.hoursDiff(DateUtils.getMonthFirstZero(), new Date());
|
|
|
+ BigDecimal ringhours2 = new BigDecimal(0.00).valueOf((int) ringhours);
|
|
|
+ BigDecimal ringSbklyl = ringhours2.subtract((ringTimeInfo.getRhjgzxsmx().add(ringTimeInfo.getRhjjxtjxs()))).divide(ringhours2, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal ringSbklyzzl = (currSbklyl.subtract(ringSbklyl)).divide(ringSbklyl, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ dto.setRingSbklyzzl(ringSbklyzzl);
|
|
|
+ }
|
|
|
+ if (null != withTimeInfo) {
|
|
|
+
|
|
|
+ int withhours = DateUtils.hoursDiff(DateUtils.getMonthFirstZero(), new Date());
|
|
|
+ BigDecimal withhours2 = new BigDecimal(0.00).valueOf((int) withhours);
|
|
|
+ BigDecimal withSbklyl = withhours2.subtract((withTimeInfo.getRhjgzxsmx().add(withTimeInfo.getRhjjxtjxs()))).divide(withhours2, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal withSbklyzzl = (currSbklyl.subtract(withSbklyl)).divide(withSbklyl, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ dto.setRingSbklyzzl(withSbklyzzl);
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ private void monthOtherInfo() {
|
|
|
+
|
|
|
+ ProEconPowerstationInfoDay1 currFiveInfo = wsmap.get("currFiveInfo");
|
|
|
+ ProEconPowerstationInfoDay1 ringFiveInfo = wsmap.get("ringFiveInfo");
|
|
|
+ ProEconPowerstationInfoDay1 withFiveInfo = wsmap.get("withFiveInfo");
|
|
|
+
|
|
|
+ ProEconPowerstationInfoDay5 currDlInfo = dlmap.get("currDlInfo");
|
|
|
+ ProEconPowerstationInfoDay5 ringDlInfo = dlmap.get("ringDlInfo");
|
|
|
+ ProEconPowerstationInfoDay5 withDlInfo = dlmap.get("withDlInfo");
|
|
|
+
|
|
|
+ ProEconPowerstationInfoDay6 currGlInfo = glmap.get("currGlInfo");
|
|
|
+ ProEconPowerstationInfoDay6 ringGlInfo = glmap.get("ringGlInfo");
|
|
|
+ ProEconPowerstationInfoDay6 withGlInfo = glmap.get("withGlInfo");
|
|
|
+
|
|
|
+ ProEconPowerstationInfoDay2 currTimeInfo = wstimemap.get("currTimeInfo");
|
|
|
+ ProEconPowerstationInfoDay2 ringTimeInfo = wstimemap.get("ringTimeInfo");
|
|
|
+ ProEconPowerstationInfoDay2 withTimeInfo = wstimemap.get("withTimeInfo");
|
|
|
+
|
|
|
+ if (null != currFiveInfo && null != currDlInfo) {
|
|
|
+
|
|
|
+ BigDecimal currZhcydl = currDlInfo.getYzhcydldb().divide(currFiveInfo.getYfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ dto.setCurrZhcydl(currZhcydl);
|
|
|
+
|
|
|
+ if (null != ringFiveInfo && null != ringDlInfo) {
|
|
|
+ BigDecimal ringZhcydl = ringDlInfo.getYzhcydldb().divide(ringFiveInfo.getYfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal ringZhcydzzl = (currZhcydl.subtract(ringZhcydl)).divide(ringZhcydl, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ dto.setRingZhcydzzl(ringZhcydzzl);
|
|
|
+ }
|
|
|
+
|
|
|
+ if (null != withFiveInfo && null != withDlInfo) {
|
|
|
+ BigDecimal withZhcydl = ringDlInfo.getYzhcydldb().divide(ringFiveInfo.getYfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal withZhcydzzl = (currZhcydl.subtract(withZhcydl)).divide(withZhcydl, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ dto.setWithZhcydzzl(withZhcydzzl);
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ if (null != currTimeInfo) {
|
|
|
+
|
|
|
+ int currhours = DateUtils.hoursDiff(DateUtils.getStartOfDay(new Date()), new Date());
|
|
|
+ BigDecimal currhours2 = new BigDecimal(0.00).valueOf((int) currhours);
|
|
|
+ BigDecimal currSbklyl = currhours2.subtract((currTimeInfo.getYhjgzxsmx().add(currTimeInfo.getYhjjxtjxs()))).divide(currhours2, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ dto.setCurrSbklyl(currSbklyl);
|
|
|
+ if (null != ringTimeInfo) {
|
|
|
+
|
|
|
+ int ringhours = DateUtils.hoursDiff(DateUtils.getMonthFirstZero(), new Date());
|
|
|
+ BigDecimal ringhours2 = new BigDecimal(0.00).valueOf((int) ringhours);
|
|
|
+ BigDecimal ringSbklyl = ringhours2.subtract((ringTimeInfo.getYhjgzxsmx().add(ringTimeInfo.getYhjjxtjxs()))).divide(ringhours2, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal ringSbklyzzl = (currSbklyl.subtract(ringSbklyl)).divide(ringSbklyl, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ dto.setRingSbklyzzl(ringSbklyzzl);
|
|
|
+ }
|
|
|
+ if (null != withTimeInfo) {
|
|
|
+
|
|
|
+ int withhours = DateUtils.hoursDiff(DateUtils.getMonthFirstZero(), new Date());
|
|
|
+ BigDecimal withhours2 = new BigDecimal(0.00).valueOf((int) withhours);
|
|
|
+ BigDecimal withSbklyl = withhours2.subtract((withTimeInfo.getYhjgzxsmx().add(withTimeInfo.getYhjjxtjxs()))).divide(withhours2, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal withSbklyzzl = (currSbklyl.subtract(withSbklyl)).divide(withSbklyl, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ dto.setRingSbklyzzl(withSbklyzzl);
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ private void yearOtherInfo() {
|
|
|
+
|
|
|
+ ProEconPowerstationInfoDay1 currFiveInfo = wsmap.get("currFiveInfo");
|
|
|
+ ProEconPowerstationInfoDay1 ringFiveInfo = wsmap.get("ringFiveInfo");
|
|
|
+ ProEconPowerstationInfoDay1 withFiveInfo = wsmap.get("withFiveInfo");
|
|
|
+
|
|
|
+ ProEconPowerstationInfoDay5 currDlInfo = dlmap.get("currDlInfo");
|
|
|
+ ProEconPowerstationInfoDay5 ringDlInfo = dlmap.get("ringDlInfo");
|
|
|
+ ProEconPowerstationInfoDay5 withDlInfo = dlmap.get("withDlInfo");
|
|
|
+
|
|
|
+ ProEconPowerstationInfoDay6 currGlInfo = glmap.get("currGlInfo");
|
|
|
+ ProEconPowerstationInfoDay6 ringGlInfo = glmap.get("ringGlInfo");
|
|
|
+ ProEconPowerstationInfoDay6 withGlInfo = glmap.get("withGlInfo");
|
|
|
+
|
|
|
+ ProEconPowerstationInfoDay2 currTimeInfo = wstimemap.get("currTimeInfo");
|
|
|
+ ProEconPowerstationInfoDay2 ringTimeInfo = wstimemap.get("ringTimeInfo");
|
|
|
+ ProEconPowerstationInfoDay2 withTimeInfo = wstimemap.get("withTimeInfo");
|
|
|
+
|
|
|
+ if (null != currFiveInfo && null != currDlInfo) {
|
|
|
+
|
|
|
+ BigDecimal currZhcydl = currDlInfo.getNzhcydldb().divide(currFiveInfo.getNfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ dto.setCurrZhcydl(currZhcydl);
|
|
|
+
|
|
|
+ if (null != ringFiveInfo && null != ringDlInfo) {
|
|
|
+ BigDecimal ringZhcydl = ringDlInfo.getNzhcydldb().divide(ringFiveInfo.getNfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal ringZhcydzzl = (currZhcydl.subtract(ringZhcydl)).divide(ringZhcydl, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ dto.setRingZhcydzzl(ringZhcydzzl);
|
|
|
+ }
|
|
|
+
|
|
|
+ if (null != withFiveInfo && null != withDlInfo) {
|
|
|
+ BigDecimal withZhcydl = ringDlInfo.getNzhcydldb().divide(ringFiveInfo.getNfdl(), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal withZhcydzzl = (currZhcydl.subtract(withZhcydl)).divide(withZhcydl, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ dto.setWithZhcydzzl(withZhcydzzl);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ if (null != currGlInfo) {
|
|
|
+ BigDecimal currGlqxfhl = currGlInfo.getNpjglcx().divide(capacity, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ dto.setCurrGlqxfhl(currGlqxfhl);
|
|
|
+ if (null != ringGlInfo) {
|
|
|
+ BigDecimal ringGlqxfhl = ringGlInfo.getNpjglcx().divide(capacity, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal ringGlqxfhzzl = (currGlqxfhl.subtract(ringGlqxfhl)).divide(ringGlqxfhl, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ dto.setRingGlqxfhzzl(ringGlqxfhzzl);
|
|
|
+ }
|
|
|
+ if (null != withGlInfo) {
|
|
|
+ BigDecimal withGlqxfhl = withGlInfo.getNpjglcx().divide(capacity, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal withGlqxfhzzl = (currGlqxfhl.subtract(withGlqxfhl)).divide(withGlqxfhl, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ dto.setWithGlqxfhzzl(withGlqxfhzzl);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ if (null != currTimeInfo) {
|
|
|
+
|
|
|
+ int currhours = DateUtils.hoursDiff(DateUtils.getStartOfDay(new Date()), new Date());
|
|
|
+ BigDecimal currhours2 = new BigDecimal(0).valueOf((int) currhours);
|
|
|
+ BigDecimal currSbklyl = currhours2.subtract((currTimeInfo.getNhjgzxsmx().add(currTimeInfo.getNhjjxtjxs()))).divide(currhours2, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ dto.setCurrSbklyl(currSbklyl);
|
|
|
+ if (null != ringTimeInfo) {
|
|
|
+
|
|
|
+ int ringhours = DateUtils.hoursDiff(DateUtils.getMonthFirstZero(), new Date());
|
|
|
+ BigDecimal ringhours2 = new BigDecimal(0).valueOf((int) ringhours);
|
|
|
+ BigDecimal ringSbklyl = ringhours2.subtract((ringTimeInfo.getNhjgzxsmx().add(ringTimeInfo.getNhjjxtjxs()))).divide(ringhours2, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal ringSbklyzzl = (currSbklyl.subtract(ringSbklyl)).divide(ringSbklyl, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ dto.setRingSbklyzzl(ringSbklyzzl);
|
|
|
+ }
|
|
|
+ if (null != withTimeInfo) {
|
|
|
+
|
|
|
+ int withhours = DateUtils.hoursDiff(DateUtils.getMonthFirstZero(), new Date());
|
|
|
+ BigDecimal withhours2 = new BigDecimal(0).valueOf((int) withhours);
|
|
|
+ BigDecimal withSbklyl = withhours2.subtract((withTimeInfo.getNhjgzxsmx().add(withTimeInfo.getNhjjxtjxs()))).divide(withhours2, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ BigDecimal withSbklyzzl = (currSbklyl.subtract(withSbklyl)).divide(withSbklyl, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
|
|
|
+ dto.setRingSbklyzzl(withSbklyzzl);
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+}
|