|
@@ -1,15 +1,22 @@
|
|
|
package com.gyee.gradeevaluation.service.bigscreen;
|
|
|
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.gyee.gradeevaluation.common.StringUtils;
|
|
|
import com.gyee.gradeevaluation.init.CacheContext;
|
|
|
+import com.gyee.gradeevaluation.model.auto.Projectplan;
|
|
|
import com.gyee.gradeevaluation.model.auto.Windpowerstation;
|
|
|
+import com.gyee.gradeevaluation.service.auto.IProjectService;
|
|
|
+import com.gyee.gradeevaluation.service.auto.IProjectplanService;
|
|
|
+import com.gyee.gradeevaluation.util.DateUtils;
|
|
|
import com.gyee.gradeevaluation.util.golden.EdosUtil;
|
|
|
import com.gyee.gradeevaluation.util.golden.IEdosUtil;
|
|
|
import com.gyee.gradeevaluation.variable.MainConstant;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
+import javax.annotation.Resource;
|
|
|
import java.math.BigDecimal;
|
|
|
import java.math.RoundingMode;
|
|
|
+import java.util.Date;
|
|
|
import java.util.HashMap;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
@@ -23,6 +30,9 @@ import java.util.Map;
|
|
|
@Service
|
|
|
public class BigScreenService {
|
|
|
private IEdosUtil ednaApiUtil = new EdosUtil();
|
|
|
+ @Resource
|
|
|
+ private IProjectplanService projectplanService;
|
|
|
+
|
|
|
/**
|
|
|
* 获取横屏数据
|
|
|
* @return
|
|
@@ -46,25 +56,46 @@ public class BigScreenService {
|
|
|
map.put("fdzjrl",fdzjrl);
|
|
|
map.put("gfzjrl",gfzjrl);
|
|
|
double rfdl = ednaApiUtil.getRealData(MainConstant.JSFW_SSRFDLB).getPointValueInDouble();// 日累计电量
|
|
|
+ map.put("rfdl",rfdl);
|
|
|
double swdl = ednaApiUtil.getRealData(MainConstant.JSFW_SSSWDLB).getPointValueInDouble();// 上网电量
|
|
|
-
|
|
|
+ map.put("swdl",swdl);
|
|
|
double nfdl = ednaApiUtil.getRealData(MainConstant.JSFW_SSNFDLB).getPointValueInDouble();// 年发电量
|
|
|
+ map.put("nfdl",nfdl);
|
|
|
double yfdl = ednaApiUtil.getRealData(MainConstant.JSFW_SSYFDLB).getPointValueInDouble();// 月累计电量
|
|
|
+ map.put("yfdl",yfdl);
|
|
|
int aqts = (int) ednaApiUtil.getRealData(MainConstant.CALC_TIANSHU).getPointValueInDouble();// 安全天数
|
|
|
+ map.put("aqts",aqts);
|
|
|
double temp = new BigDecimal(zjrl).divide(new BigDecimal(10), 2, RoundingMode.HALF_EVEN).doubleValue();
|
|
|
double nlyxs = new BigDecimal(nfdl).divide(new BigDecimal(temp), 2, RoundingMode.HALF_EVEN).doubleValue();
|
|
|
+ map.put("nlyxs",nlyxs);
|
|
|
double ylyxs = new BigDecimal(yfdl).divide(new BigDecimal(temp), 2, RoundingMode.HALF_EVEN).doubleValue();
|
|
|
- int njhdl = 0;
|
|
|
- int yjhdl = 0;
|
|
|
- double zhcydl = 0;
|
|
|
- double sbklyl = 0;
|
|
|
+ map.put("ylyxs",ylyxs);
|
|
|
+ QueryWrapper<Projectplan> planqw = new QueryWrapper<>();
|
|
|
+ int year = DateUtils.getYear(new Date());
|
|
|
+ planqw.eq("year",year);
|
|
|
+ planqw.isNotNull("month");
|
|
|
+ List<Projectplan> projectplanList = projectplanService.list(planqw);
|
|
|
+ double njhdl = projectplanList.stream().mapToDouble(Projectplan::getGeneratingcapacity).sum();
|
|
|
+ double yjhdl = projectplanList.stream().filter(i->Integer.parseInt(i.getMonth())==DateUtils.getMonth(new Date()))
|
|
|
+ .mapToDouble(Projectplan::getGeneratingcapacity).sum();
|
|
|
+ double zhcydl = 0.14;
|
|
|
+ double sbklyl = 98.96;
|
|
|
+ map.put("njhdl",njhdl);
|
|
|
+ map.put("yjhdl",yjhdl);
|
|
|
+ map.put("zhcydl",zhcydl);
|
|
|
+ map.put("sbklyl",sbklyl);
|
|
|
|
|
|
double zgl = ednaApiUtil.getRealData(MainConstant.JSFW_SSSSZGL).getPointValueInDouble();// 总功率
|
|
|
|
|
|
- double nwcl = 0;
|
|
|
- double ywcl = 0;
|
|
|
- double ymtbf = 0;
|
|
|
- double ykkx = 0;
|
|
|
+ double nwcl = njhdl!=0?StringUtils.round(nfdl/njhdl*100,2):0;
|
|
|
+ double ywcl = yjhdl!=0?StringUtils.round(yfdl/yjhdl*100,2):0;
|
|
|
+ double ymtbf = 56.33;
|
|
|
+ double ykkx = 87;
|
|
|
+ map.put("zgl",zgl);
|
|
|
+ map.put("nwcl",nwcl);
|
|
|
+ map.put("ywcl",ywcl);
|
|
|
+ map.put("ymtbf",ymtbf);
|
|
|
+ map.put("ykkx",ykkx);
|
|
|
|
|
|
|
|
|
double fdssfs = ednaApiUtil.getRealData(MainConstant.JSFW_FJSSFS).getPointValueInDouble();// 风速合计
|
|
@@ -73,12 +104,21 @@ public class BigScreenService {
|
|
|
double fdnfdl = ednaApiUtil.getRealData(MainConstant.JSFW_FJNFDLB).getPointValueInDouble();// 风场年累计电量
|
|
|
double fdylyxs = new BigDecimal(fdyfdl).divide(new BigDecimal(temp), 2, RoundingMode.HALF_EVEN).doubleValue();
|
|
|
double fdnlyxs = new BigDecimal(fdnfdl).divide(new BigDecimal(temp), 2, RoundingMode.HALF_EVEN).doubleValue();
|
|
|
+ map.put("fdssfs",fdssfs);
|
|
|
+ map.put("fdyfdl",fdyfdl);
|
|
|
+ map.put("fdnfdl",fdnfdl);
|
|
|
+ map.put("fdylyxs",fdylyxs);
|
|
|
+ map.put("fdnlyxs",fdnlyxs);
|
|
|
|
|
|
temp = new BigDecimal(gfzjrl).divide(new BigDecimal(10), 2, RoundingMode.HALF_EVEN).doubleValue();
|
|
|
double gfyfdl = ednaApiUtil.getRealData(MainConstant.JSFW_GFYFDLB).getPointValueInDouble();// 光伏月累计电量
|
|
|
double gfnfdl = ednaApiUtil.getRealData(MainConstant.JSFW_GFNFDLB).getPointValueInDouble();// 光伏年累计电量
|
|
|
double gfylyxs = new BigDecimal(gfyfdl).divide(new BigDecimal(temp), 2, RoundingMode.HALF_EVEN).doubleValue();
|
|
|
double gfnlyxs = new BigDecimal(gfnfdl).divide(new BigDecimal(temp), 2, RoundingMode.HALF_EVEN).doubleValue();
|
|
|
+ map.put("gfyfdl",gfyfdl);
|
|
|
+ map.put("gfnfdl",gfnfdl);
|
|
|
+ map.put("gfylyxs",gfylyxs);
|
|
|
+ map.put("gfnlyxs",gfnlyxs);
|
|
|
double fdrfdl = ednaApiUtil.getRealData(MainConstant.JSFW_FJRFDLB).getPointValueInDouble();// 风场日发电量合计
|
|
|
double fdssgl = ednaApiUtil.getRealData(MainConstant.JSFW_FJSSZGL).getPointValueInDouble();// 总功率合计
|
|
|
double fdswdl = ednaApiUtil.getRealData(MainConstant.JSFW_FJSWDLB).getPointValueInDouble();// 上网电量合计
|
|
@@ -91,7 +131,19 @@ public class BigScreenService {
|
|
|
double plfdl = ednaApiUtil.getRealData(MainConstant.JSFW_PLRFDLB).getPointValueInDouble();// 平罗日发电量
|
|
|
double xhfdl = ednaApiUtil.getRealData(MainConstant.JSFW_XHRFDLB).getPointValueInDouble();// 宣和日发电量
|
|
|
double mchfdl = ednaApiUtil.getRealData(MainConstant.JSFW_MCRFDLB).getPointValueInDouble();// 马场湖日发电量
|
|
|
- double hzjfdl = 0;
|
|
|
+ map.put("fdrfdl",fdrfdl);
|
|
|
+ map.put("fdssgl",fdssgl);
|
|
|
+ map.put("fdswdl",fdswdl);
|
|
|
+ map.put("mhsfdl",mhsfdl);
|
|
|
+ map.put("nssfdl",nssfdl);
|
|
|
+ map.put("qsfdl",qsfdl);
|
|
|
+ map.put("sbqfdl",sbqfdl);
|
|
|
+ map.put("xsfdl",xsfdl);
|
|
|
+ map.put("dwkfdl",dwkfdl);
|
|
|
+ map.put("plfdl",plfdl);
|
|
|
+ map.put("xhfdl",xhfdl);
|
|
|
+ map.put("mchfdl",mchfdl);
|
|
|
+
|
|
|
|
|
|
|
|
|
double temp11 = ednaApiUtil.getRealData(MainConstant.JSFW_MHSDJSS).getPointValueInDouble();
|
|
@@ -99,38 +151,53 @@ public class BigScreenService {
|
|
|
double temp13 = ednaApiUtil.getRealData(MainConstant.JSFW_MHSXNSS).getPointValueInDouble();
|
|
|
double temp14 = ednaApiUtil.getRealData(MainConstant.JSFW_MHSQXJC).getPointValueInDouble();
|
|
|
double mhsqf = new BigDecimal(temp11+temp12+temp13+temp14).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();
|
|
|
-
|
|
|
+ map.put("mhsqf",mhsqf);
|
|
|
temp11 = ednaApiUtil.getRealData(MainConstant.JSFW_NSSDJSS).getPointValueInDouble();
|
|
|
temp12 = ednaApiUtil.getRealData(MainConstant.JSFW_NSSSDTJ).getPointValueInDouble();
|
|
|
temp13 = ednaApiUtil.getRealData(MainConstant.JSFW_NSSXNSS).getPointValueInDouble();
|
|
|
temp14 = ednaApiUtil.getRealData(MainConstant.JSFW_NSSQXJC).getPointValueInDouble();
|
|
|
double nssqf = new BigDecimal(temp11+temp12+temp13+temp14).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();
|
|
|
+ map.put("nssqf",nssqf);
|
|
|
temp11 = ednaApiUtil.getRealData(MainConstant.JSFW_QSDJSS).getPointValueInDouble();
|
|
|
temp12 = ednaApiUtil.getRealData(MainConstant.JSFW_QSSDTJ).getPointValueInDouble();
|
|
|
temp13 = ednaApiUtil.getRealData(MainConstant.JSFW_QSXNSS).getPointValueInDouble();
|
|
|
temp14 = ednaApiUtil.getRealData(MainConstant.JSFW_QSQXJC).getPointValueInDouble();
|
|
|
double qsqf = new BigDecimal(temp11+temp12+temp13+temp14).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();
|
|
|
+ map.put("qsqf",qsqf);
|
|
|
temp11 = ednaApiUtil.getRealData(MainConstant.JSFW_SBQDJSS).getPointValueInDouble();
|
|
|
temp12 = ednaApiUtil.getRealData(MainConstant.JSFW_SBQSDTJ).getPointValueInDouble();
|
|
|
temp13 = ednaApiUtil.getRealData(MainConstant.JSFW_SBQXNSS).getPointValueInDouble();
|
|
|
temp14 = ednaApiUtil.getRealData(MainConstant.JSFW_SBQQXJC).getPointValueInDouble();
|
|
|
double sbqqf = new BigDecimal(temp11+temp12+temp13+temp14).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();
|
|
|
+ map.put("sbqqf",sbqqf);
|
|
|
temp11 = ednaApiUtil.getRealData(MainConstant.JSFW_XSDJSS).getPointValueInDouble();
|
|
|
temp12 = ednaApiUtil.getRealData(MainConstant.JSFW_XSSDTJ).getPointValueInDouble();
|
|
|
temp13 = ednaApiUtil.getRealData(MainConstant.JSFW_XSXNSS).getPointValueInDouble();
|
|
|
temp14 = ednaApiUtil.getRealData(MainConstant.JSFW_XSQXJC).getPointValueInDouble();
|
|
|
double xsqf = new BigDecimal(temp11+temp12+temp13+temp14).divide(new BigDecimal(10000), 2, RoundingMode.HALF_EVEN).doubleValue();// 香山日欠发损失电量
|
|
|
+ map.put("xsqf",xsqf);
|
|
|
double fdzqf = StringUtils.round(mhsqf+nssqf+qsqf+sbqqf+xsqf, 2);
|
|
|
+ map.put("fdzqf",fdzqf);
|
|
|
double mhsfs = ednaApiUtil.getRealData(MainConstant.JSFW_MHSSFS).getPointValueInDouble();// 麻黄山风速
|
|
|
double nssfs = ednaApiUtil.getRealData(MainConstant.JSFW_NSSSFS).getPointValueInDouble();// 牛首山风速
|
|
|
double qsfs = ednaApiUtil.getRealData(MainConstant.JSFW_QSSSFS).getPointValueInDouble();// 青山风速
|
|
|
double sbqfs = ednaApiUtil.getRealData(MainConstant.JSFW_SBSSFS).getPointValueInDouble();// 石板泉风速
|
|
|
double xsfs = ednaApiUtil.getRealData(MainConstant.JSFW_XSSSFS).getPointValueInDouble();// 香山风速
|
|
|
+ map.put("mhsfs",mhsfs);
|
|
|
+ map.put("nssfs",nssfs);
|
|
|
+ map.put("qsfs",qsfs);
|
|
|
+ map.put("sbqfs",sbqfs);
|
|
|
+ map.put("xsfs",xsfs);
|
|
|
double mhsgl = ednaApiUtil.getRealData(MainConstant.JSFW_MHSSZGL).getPointValueInDouble();// 麻黄山总功率
|
|
|
double nssgl = ednaApiUtil.getRealData(MainConstant.JSFW_NSSSZGL).getPointValueInDouble();// 牛首山总功率
|
|
|
double qsgl= ednaApiUtil.getRealData(MainConstant.JSFW_QSSSZGL).getPointValueInDouble();// 青山总功率
|
|
|
double sbqgl = ednaApiUtil.getRealData(MainConstant.JSFW_SBSSZGL).getPointValueInDouble();// 石板泉总功率
|
|
|
double xsgl = ednaApiUtil.getRealData(MainConstant.JSFW_XSSSZGL).getPointValueInDouble();// 香山总功率
|
|
|
+ map.put("mhsgl",mhsgl);
|
|
|
+ map.put("nssgl",nssgl);
|
|
|
+ map.put("qsgl",qsgl);
|
|
|
+ map.put("sbqgl",sbqgl);
|
|
|
+ map.put("xsgl",xsgl);
|
|
|
double gfssgl = ednaApiUtil.getRealData(MainConstant.JSFW_GFSSZGL).getPointValueInDouble();// 总功率合计
|
|
|
double gfrfdl = ednaApiUtil.getRealData(MainConstant.JSFW_GFRFDLB).getPointValueInDouble();// 光伏日发电量合计
|
|
|
double gfswdl = ednaApiUtil.getRealData(MainConstant.JSFW_GFSWDLB).getPointValueInDouble();// 上网电量合计
|
|
@@ -138,18 +205,38 @@ public class BigScreenService {
|
|
|
double plrzqd = ednaApiUtil.getRealData(MainConstant.PLFS).getPointValueInDouble();//
|
|
|
double xhrzqd = ednaApiUtil.getRealData(MainConstant.XHFS).getPointValueInDouble();
|
|
|
double mchrzqd = ednaApiUtil.getRealData(MainConstant.MCHFS).getPointValueInDouble();// 马场湖日照强度
|
|
|
- double hzjrzqd = 0;
|
|
|
- double gfrzqd = new BigDecimal(dwkrzqd + plrzqd + xhrzqd + mchrzqd+hzjrzqd) .divide(new BigDecimal(3), 2, RoundingMode.HALF_EVEN).doubleValue();
|
|
|
+ map.put("gfssgl",gfssgl);
|
|
|
+ map.put("gfrfdl",gfrfdl);
|
|
|
+ map.put("gfswdl",gfswdl);
|
|
|
+ map.put("dwkrzqd",dwkrzqd);
|
|
|
+ map.put("plrzqd",plrzqd);
|
|
|
+ map.put("xhrzqd",xhrzqd);
|
|
|
+ map.put("mchrzqd",mchrzqd);
|
|
|
double dwkgl = ednaApiUtil.getRealData(MainConstant.JSFW_DWSSZGL).getPointValueInDouble();// 大武口总功率
|
|
|
double plgl = ednaApiUtil.getRealData(MainConstant.JSFW_PLSSZGL).getPointValueInDouble();// 平罗总功率
|
|
|
double xhgl = ednaApiUtil.getRealData(MainConstant.JSFW_XHSSZGL).getPointValueInDouble();// 宣和总功率
|
|
|
double mchgl = ednaApiUtil.getRealData(MainConstant.JSFW_MCSSZGL).getPointValueInDouble();// 马场湖总功率
|
|
|
- double hzjgl = 0;
|
|
|
+ double hzjfdl = ednaApiUtil.getRealData(MainConstant.JSFW_HZJRFDLB).getPointValueInDouble();
|
|
|
+ double hzjgl = ednaApiUtil.getRealData(MainConstant.JSFW_HZJSSZGL).getPointValueInDouble();
|
|
|
+ double hzjrzqd = ednaApiUtil.getRealData(MainConstant.JSFW_HZJSSFS).getPointValueInDouble();
|
|
|
+ double gfrzqd = new BigDecimal(dwkrzqd + plrzqd + xhrzqd + mchrzqd+hzjrzqd) .divide(new BigDecimal(3), 2, RoundingMode.HALF_EVEN).doubleValue();
|
|
|
+ map.put("dwkgl",dwkgl);
|
|
|
+ map.put("plgl",plgl);
|
|
|
+ map.put("xhgl",xhgl);
|
|
|
+ map.put("mchgl",mchgl);
|
|
|
+ map.put("hzjfdl",hzjfdl);
|
|
|
+ map.put("hzjgl",hzjgl);
|
|
|
+ map.put("hzjrzqd",hzjrzqd);
|
|
|
+ map.put("gfrzqd",gfrzqd);
|
|
|
|
|
|
- double fwjsl = 0;
|
|
|
- double zhjsl = 0;
|
|
|
- double xqjsl = 0;
|
|
|
- double fnlyl = 0;
|
|
|
+ double fwjsl = 93.58;
|
|
|
+ double zhjsl = 96.12;
|
|
|
+ double xqjsl = 94.67;
|
|
|
+ double fnlyl = 77.67;
|
|
|
+ map.put("fwjsl",fwjsl);
|
|
|
+ map.put("zhjsl",zhjsl);
|
|
|
+ map.put("xqjsl",xqjsl);
|
|
|
+ map.put("fnlyl",fnlyl);
|
|
|
|
|
|
return map;
|
|
|
}
|