|
@@ -0,0 +1,461 @@
|
|
|
+package com.gyee.runeconomy.service;
|
|
|
+
|
|
|
+import com.gyee.common.util.DateUtils;
|
|
|
+import com.gyee.common.vo.benchmark.ValueVo;
|
|
|
+import com.gyee.runeconomy.model.auto.ProEconWtwindDayInfo;
|
|
|
+import com.gyee.runeconomy.service.auto.IProEconWtwindDayInfoService;
|
|
|
+import com.gyee.runeconomy.util.StringUtils;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+
|
|
|
+import javax.annotation.Resource;
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.Date;
|
|
|
+import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
+import java.util.stream.Collectors;
|
|
|
+
|
|
|
+@Service
|
|
|
+public class WtwindDayInfoService {
|
|
|
+ @Resource
|
|
|
+ private IProEconWtwindDayInfoService proEconWtwindDayInfoService;
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ private String jfplday;
|
|
|
+ private String jfplmonth;
|
|
|
+ private String jfplyear;
|
|
|
+
|
|
|
+ public List<ProEconWtwindDayInfo> fzy(String wtId, Date recorddate) {
|
|
|
+
|
|
|
+
|
|
|
+ List<ProEconWtwindDayInfo> list =new ArrayList<>();
|
|
|
+
|
|
|
+
|
|
|
+ if (StringUtils.notEmp(wtId) && StringUtils.notEmp(recorddate)) {
|
|
|
+
|
|
|
+ list = proEconWtwindDayInfoService.list().stream().filter(i->
|
|
|
+ i.getWindturbineId().equals(wtId)
|
|
|
+ && i.getRecordDate().compareTo(DateUtils.truncate(recorddate)) ==0
|
|
|
+ ).collect(Collectors.toList());
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+ return list;
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ public List<ProEconWtwindDayInfo> getWindturbinethewindinfo(String wtId, Date beginDate, Date endDate) {
|
|
|
+
|
|
|
+
|
|
|
+ List<ProEconWtwindDayInfo> list = new ArrayList<>();
|
|
|
+
|
|
|
+ if ( StringUtils.notEmp(wtId) && StringUtils.notEmp(beginDate) && StringUtils.notEmp(endDate)) {
|
|
|
+
|
|
|
+ list = proEconWtwindDayInfoService.list().stream().filter(i->
|
|
|
+ i.getWindturbineId().equals(wtId)
|
|
|
+ && ( i.getRecordDate().compareTo(beginDate)==0 || i.getRecordDate().after(beginDate))
|
|
|
+ && (i.getRecordDate().compareTo(endDate)==0 || i.getRecordDate().before(endDate))
|
|
|
+ ).collect(Collectors.toList());
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+ return list;
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ public void rzdfs(String wtId, String recorddate, Map<String, Object> map, List<ValueVo> vos) {
|
|
|
+ if (StringUtils.notEmp(recorddate) && StringUtils.notEmp(wtId)) {
|
|
|
+
|
|
|
+ Date date = DateUtils.parseDate(recorddate);
|
|
|
+
|
|
|
+ List<ProEconWtwindDayInfo> wtdls = fzy(wtId, date);
|
|
|
+
|
|
|
+ if (!wtdls.isEmpty()) {
|
|
|
+
|
|
|
+ ProEconWtwindDayInfo winfo = wtdls.get(0);
|
|
|
+
|
|
|
+ int cb = (int) wtdls.get(0).getCb().intValue();
|
|
|
+ int cd = (int) wtdls.get(0).getCd().intValue();
|
|
|
+ int cg = (int) wtdls.get(0).getCg().intValue();
|
|
|
+
|
|
|
+ jfplday = "静风频率为" + cb;
|
|
|
+ jfplmonth = "静风频率为" + cd;
|
|
|
+ jfplyear = "静风频率为" + cg;
|
|
|
+
|
|
|
+ for (int i = 0; i < 16; i++) {
|
|
|
+ ValueVo vo = new ValueVo();
|
|
|
+ double temp1=0.0;
|
|
|
+ double temp2=0.0;
|
|
|
+ double temp3=0.0;
|
|
|
+ switch (i) {
|
|
|
+ case 0:
|
|
|
+ temp1=null !=winfo.getN4()?winfo.getN4():0.0;
|
|
|
+ temp2=null !=winfo.getN()?winfo.getN():0.0;
|
|
|
+ temp3=null !=winfo.getN2()?winfo.getN2():0.0;
|
|
|
+
|
|
|
+ vo.setName("N" + temp1 + "/" + temp2 + ")");
|
|
|
+ vo.setData1(temp3);
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ break;
|
|
|
+ case 1:
|
|
|
+ temp1=null !=winfo.getNne4()?winfo.getNne4():0.0;
|
|
|
+ temp2=null !=winfo.getNne()?winfo.getNne():0.0;
|
|
|
+ temp3=null !=winfo.getNne2()?winfo.getNne2():0.0;
|
|
|
+
|
|
|
+ vo.setName("NNE" + temp1 + "/" + temp2 + ")");
|
|
|
+ vo.setData1(temp3);
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ break;
|
|
|
+ case 2:
|
|
|
+ temp1=null !=winfo.getNe4()?winfo.getNe4():0.0;
|
|
|
+ temp2=null !=winfo.getNe()?winfo.getNe():0.0;
|
|
|
+ temp3=null !=winfo.getNe2()?winfo.getNe2():0.0;
|
|
|
+
|
|
|
+ vo.setName("NE" + temp1 + "/" + temp2 + ")");
|
|
|
+ vo.setData1(temp3);
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ break;
|
|
|
+ case 3:
|
|
|
+ temp1=null !=winfo.getEne4()?winfo.getEne4():0.0;
|
|
|
+ temp2=null !=winfo.getEne()?winfo.getEne():0.0;
|
|
|
+ temp3=null !=winfo.getEne2()?winfo.getEne2():0.0;
|
|
|
+
|
|
|
+ vo.setName("ENE" + temp1 + "/" + temp2 + ")");
|
|
|
+ vo.setData1(temp3);
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ break;
|
|
|
+ case 4:
|
|
|
+ temp1=null !=winfo.getE4()?winfo.getE4():0.0;
|
|
|
+ temp2=null !=winfo.getE()?winfo.getE():0.0;
|
|
|
+ temp3=null !=winfo.getE2()?winfo.getE2():0.0;
|
|
|
+
|
|
|
+ vo.setName("E(" + temp1 + "/" + temp2 + ")");
|
|
|
+ vo.setData1(temp3);
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ break;
|
|
|
+ case 5:
|
|
|
+ temp1=null !=winfo.getEse4()?winfo.getEse4():0.0;
|
|
|
+ temp2=null !=winfo.getEse()?winfo.getEse():0.0;
|
|
|
+ temp3=null !=winfo.getEse2()?winfo.getEse2():0.0;
|
|
|
+ vo.setName("ESE(" + temp1 + "/" + temp2 + ")");
|
|
|
+
|
|
|
+
|
|
|
+ vo.setData1(temp3);
|
|
|
+ break;
|
|
|
+ case 6:
|
|
|
+ temp1=null !=winfo.getSe4()?winfo.getSe4():0.0;
|
|
|
+ temp2=null !=winfo.getSe()?winfo.getSe():0.0;
|
|
|
+ temp3=null !=winfo.getSe2()?winfo.getSe2():0.0;
|
|
|
+
|
|
|
+ vo.setName("SE(" + temp1 + "/" + temp2 + ")");
|
|
|
+
|
|
|
+
|
|
|
+ vo.setData1(temp3);
|
|
|
+ break;
|
|
|
+ case 7:
|
|
|
+ temp1=null !=winfo.getSse4()?winfo.getSse4():0.0;
|
|
|
+ temp2=null !=winfo.getSse()?winfo.getSse():0.0;
|
|
|
+ temp3=null !=winfo.getSse2()?winfo.getSse2():0.0;
|
|
|
+ vo.setName("SSE(" + temp1 + "/" + temp2 + ")");
|
|
|
+
|
|
|
+
|
|
|
+ vo.setData1(temp3);
|
|
|
+ break;
|
|
|
+ case 8:
|
|
|
+ temp1=null !=winfo.getS4()?winfo.getS4():0.0;
|
|
|
+ temp2=null !=winfo.getS()?winfo.getS():0.0;
|
|
|
+ temp3=null !=winfo.getS2()?winfo.getS2():0.0;
|
|
|
+ vo.setName("S(" + temp1 + "/" + temp2 + ")");
|
|
|
+
|
|
|
+
|
|
|
+ vo.setData1(temp3);
|
|
|
+ break;
|
|
|
+ case 9:
|
|
|
+ temp1=null !=winfo.getSsw4()?winfo.getSsw4():0.0;
|
|
|
+ temp2=null !=winfo.getSsw()?winfo.getSsw():0.0;
|
|
|
+ temp3=null !=winfo.getSsw2()?winfo.getSsw2():0.0;
|
|
|
+
|
|
|
+ vo.setName("SSW(" + temp1 + "/" + temp2 + ")");
|
|
|
+ vo.setData1(temp3);
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ break;
|
|
|
+ case 10:
|
|
|
+ temp1=null !=winfo.getSw4()?winfo.getSw4():0.0;
|
|
|
+ temp2=null !=winfo.getSw()?winfo.getSw():0.0;
|
|
|
+ temp3=null !=winfo.getSw2()?winfo.getSw2():0.0;
|
|
|
+
|
|
|
+ vo.setName("SW(" + temp1 + "/" + temp2 + ")");
|
|
|
+ vo.setData1(temp3);
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ break;
|
|
|
+ case 11:
|
|
|
+ temp1=null !=winfo.getWsw4()?winfo.getWsw4():0.0;
|
|
|
+ temp2=null !=winfo.getWsw()?winfo.getWsw():0.0;
|
|
|
+ temp3=null !=winfo.getWsw2()?winfo.getWsw2():0.0;
|
|
|
+
|
|
|
+ vo.setName("WSW(" + temp1 + "/" + temp2 + ")");
|
|
|
+ vo.setData1(temp3);
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ break;
|
|
|
+ case 12:
|
|
|
+ temp1=null !=winfo.getW4()?winfo.getW4():0.0;
|
|
|
+ temp2=null !=winfo.getW()?winfo.getW():0.0;
|
|
|
+ temp3=null !=winfo.getW2()?winfo.getW2():0.0;
|
|
|
+
|
|
|
+ vo.setName("W(" + temp1 + "/" + temp2 + ")");
|
|
|
+ vo.setData1(temp3);
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ break;
|
|
|
+ case 13:
|
|
|
+ temp1=null !=winfo.getWnw4()?winfo.getWnw4():0.0;
|
|
|
+ temp2=null !=winfo.getWnw()?winfo.getWnw():0.0;
|
|
|
+ temp3=null !=winfo.getWnw2()?winfo.getWnw2():0.0;
|
|
|
+
|
|
|
+ vo.setName("WNW(" + temp1 + "/" + temp2 + ")");
|
|
|
+ vo.setData1(temp3);
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ break;
|
|
|
+ case 14:
|
|
|
+ temp1=null !=winfo.getNw4()?winfo.getNw4():0.0;
|
|
|
+ temp2=null !=winfo.getNw()?winfo.getNw():0.0;
|
|
|
+ temp3=null !=winfo.getNw2()?winfo.getNw2():0.0;
|
|
|
+
|
|
|
+ vo.setName("NW(" + temp1 + "/" + temp2 + ")");
|
|
|
+ vo.setData1(temp3);
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ break;
|
|
|
+ case 15:
|
|
|
+ temp1=null !=winfo.getNnw4()?winfo.getNnw4():0.0;
|
|
|
+ temp2=null !=winfo.getNnw()?winfo.getNnw():0.0;
|
|
|
+ temp3=null !=winfo.getNnw2()?winfo.getNnw2():0.0;
|
|
|
+
|
|
|
+ vo.setName("NNW" + temp1 + "/" + temp2 + ")");
|
|
|
+ vo.setData1(temp3);
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ break;
|
|
|
+
|
|
|
+
|
|
|
+ default:
|
|
|
+ break;
|
|
|
+ }
|
|
|
+
|
|
|
+ vos.add(vo);
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ map.put("jfpl", jfplday);
|
|
|
+ map.put("data", vos);
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ public void yzdfs(String wtId, String recorddate, Map<String, Object> map, List<ValueVo> vos) {
|
|
|
+ if (StringUtils.notEmp(recorddate) && StringUtils.notEmp(wtId)) {
|
|
|
+
|
|
|
+ Date date = DateUtils.parseDate(recorddate);
|
|
|
+
|
|
|
+ List<ProEconWtwindDayInfo> wtdls = fzy(wtId, date);
|
|
|
+
|
|
|
+ if (!wtdls.isEmpty()) {
|
|
|
+
|
|
|
+ ProEconWtwindDayInfo winfo = wtdls.get(0);
|
|
|
+ int cb = (int) wtdls.get(0).getCb().intValue();
|
|
|
+ int cd = (int) wtdls.get(0).getCd().intValue();
|
|
|
+ int cg = (int) wtdls.get(0).getCg().intValue();
|
|
|
+
|
|
|
+ jfplday = "静风频率为" + cb;
|
|
|
+ jfplmonth = "静风频率为" + cd;
|
|
|
+ jfplyear = "静风频率为" + cg;
|
|
|
+ for (int i = 0; i < 16; i++) {
|
|
|
+ ValueVo vo = new ValueVo();
|
|
|
+ double temp1=0.0;
|
|
|
+ double temp2=0.0;
|
|
|
+ double temp3=0.0;
|
|
|
+ switch (i) {
|
|
|
+ case 0:
|
|
|
+ temp1=null !=winfo.getN10()?winfo.getN10():0.0;
|
|
|
+ temp2=null !=winfo.getN7()?winfo.getN7():0.0;
|
|
|
+ temp3=null !=winfo.getN8()?winfo.getN8():0.0;
|
|
|
+
|
|
|
+ vo.setName("N" + temp1 + "/" + temp2 + ")");
|
|
|
+ vo.setData1(temp3);
|
|
|
+
|
|
|
+ break;
|
|
|
+ case 1:
|
|
|
+ temp1=null !=winfo.getNne10()?winfo.getNne10():0.0;
|
|
|
+ temp2=null !=winfo.getNne7()?winfo.getNne7():0.0;
|
|
|
+ temp3=null !=winfo.getNne8()?winfo.getNne8():0.0;
|
|
|
+
|
|
|
+ vo.setName("NNE" + temp1 + "/" + temp2 + ")");
|
|
|
+ vo.setData1(temp3);
|
|
|
+
|
|
|
+ break;
|
|
|
+ case 2:
|
|
|
+ temp1=null !=winfo.getNe10()?winfo.getNe10():0.0;
|
|
|
+ temp2=null !=winfo.getNe7()?winfo.getNe7():0.0;
|
|
|
+ temp3=null !=winfo.getNe8()?winfo.getNe8():0.0;
|
|
|
+
|
|
|
+ vo.setName("NE" + temp1 + "/" + temp2 + ")");
|
|
|
+ vo.setData1(temp3);
|
|
|
+
|
|
|
+ break;
|
|
|
+ case 3:
|
|
|
+ temp1=null !=winfo.getEne10()?winfo.getEne10():0.0;
|
|
|
+ temp2=null !=winfo.getEne7()?winfo.getEne7():0.0;
|
|
|
+ temp3=null !=winfo.getEne8()?winfo.getEne8():0.0;
|
|
|
+
|
|
|
+ vo.setName("ENE" + temp1 + "/" + temp2 + ")");
|
|
|
+ vo.setData1(temp3);
|
|
|
+
|
|
|
+
|
|
|
+ break;
|
|
|
+ case 4:
|
|
|
+ temp1=null !=winfo.getE10()?winfo.getE10():0.0;
|
|
|
+ temp2=null !=winfo.getE7()?winfo.getE7():0.0;
|
|
|
+ temp3=null !=winfo.getE8()?winfo.getE8():0.0;
|
|
|
+
|
|
|
+ vo.setName("E(" + temp1 + "/" + temp2 + ")");
|
|
|
+ vo.setData1(temp3);
|
|
|
+
|
|
|
+ break;
|
|
|
+ case 5:
|
|
|
+ temp1=null !=winfo.getEse10()?winfo.getEse10():0.0;
|
|
|
+ temp2=null !=winfo.getEse7()?winfo.getEse7():0.0;
|
|
|
+ temp3=null !=winfo.getEse8()?winfo.getEse8():0.0;
|
|
|
+ vo.setName("ESE(" + temp1 + "/" + temp2 + ")");
|
|
|
+ vo.setData1(temp3);
|
|
|
+ break;
|
|
|
+ case 6:
|
|
|
+ temp1=null !=winfo.getSe10()?winfo.getSe10():0.0;
|
|
|
+ temp2=null !=winfo.getSe7()?winfo.getSe7():0.0;
|
|
|
+ temp3=null !=winfo.getSe8()?winfo.getSe8():0.0;
|
|
|
+
|
|
|
+ vo.setName("SE(" + temp1 + "/" + temp2 + ")");
|
|
|
+ vo.setData1(temp3);
|
|
|
+ break;
|
|
|
+ case 7:
|
|
|
+ temp1=null !=winfo.getSse10()?winfo.getSse10():0.0;
|
|
|
+ temp2=null !=winfo.getSse7()?winfo.getSse7():0.0;
|
|
|
+ temp3=null !=winfo.getSse8()?winfo.getSse8():0.0;
|
|
|
+ vo.setName("SSE(" + temp1 + "/" + temp2 + ")");
|
|
|
+ vo.setData1(temp3);
|
|
|
+ break;
|
|
|
+ case 8:
|
|
|
+ temp1=null !=winfo.getS10()?winfo.getS10():0.0;
|
|
|
+ temp2=null !=winfo.getS7()?winfo.getS7():0.0;
|
|
|
+ temp3=null !=winfo.getS8()?winfo.getS8():0.0;
|
|
|
+ vo.setName("S(" + temp1 + "/" + temp2 + ")");
|
|
|
+ vo.setData1(temp3);
|
|
|
+ break;
|
|
|
+ case 9:
|
|
|
+ temp1=null !=winfo.getSsw10()?winfo.getSsw10():0.0;
|
|
|
+ temp2=null !=winfo.getSsw7()?winfo.getSsw7():0.0;
|
|
|
+ temp3=null !=winfo.getSsw8()?winfo.getSsw8():0.0;
|
|
|
+
|
|
|
+ vo.setName("SSW(" + temp1 + "/" + temp2 + ")");
|
|
|
+ vo.setData1(temp3);
|
|
|
+ break;
|
|
|
+ case 10:
|
|
|
+ temp1=null !=winfo.getSw10()?winfo.getSw10():0.0;
|
|
|
+ temp2=null !=winfo.getSw7()?winfo.getSw7():0.0;
|
|
|
+ temp3=null !=winfo.getSw8()?winfo.getSw8():0.0;
|
|
|
+
|
|
|
+ vo.setName("SW(" + temp1 + "/" + temp2 + ")");
|
|
|
+ vo.setData1(temp3);
|
|
|
+
|
|
|
+ break;
|
|
|
+ case 11:
|
|
|
+ temp1=null !=winfo.getWsw10()?winfo.getWsw10():0.0;
|
|
|
+ temp2=null !=winfo.getWsw7()?winfo.getWsw7():0.0;
|
|
|
+ temp3=null !=winfo.getWsw8()?winfo.getWsw8():0.0;
|
|
|
+
|
|
|
+ vo.setName("WSW(" + temp1 + "/" + temp2 + ")");
|
|
|
+ vo.setData1(temp3);
|
|
|
+
|
|
|
+ break;
|
|
|
+ case 12:
|
|
|
+ temp1=null !=winfo.getW10()?winfo.getW10():0.0;
|
|
|
+ temp2=null !=winfo.getW7()?winfo.getW7():0.0;
|
|
|
+ temp3=null !=winfo.getW8()?winfo.getW8():0.0;
|
|
|
+
|
|
|
+ vo.setName("W(" + temp1 + "/" + temp2 + ")");
|
|
|
+ vo.setData1(temp3);
|
|
|
+
|
|
|
+ break;
|
|
|
+ case 13:
|
|
|
+ temp1=null !=winfo.getWnw10()?winfo.getWnw10():0.0;
|
|
|
+ temp2=null !=winfo.getWnw7()?winfo.getWnw7():0.0;
|
|
|
+ temp3=null !=winfo.getWnw8()?winfo.getWnw8():0.0;
|
|
|
+
|
|
|
+ vo.setName("WNW(" + temp1 + "/" + temp2 + ")");
|
|
|
+ vo.setData1(temp3);
|
|
|
+
|
|
|
+ break;
|
|
|
+ case 14:
|
|
|
+ temp1=null !=winfo.getNw10()?winfo.getNw10():0.0;
|
|
|
+ temp2=null !=winfo.getNw7()?winfo.getNw7():0.0;
|
|
|
+ temp3=null !=winfo.getNw8()?winfo.getNw8():0.0;
|
|
|
+
|
|
|
+ vo.setName("NW(" + temp1 + "/" + temp2 + ")");
|
|
|
+ vo.setData1(temp3);
|
|
|
+
|
|
|
+ break;
|
|
|
+ case 15:
|
|
|
+ temp1=null !=winfo.getNnw10()?winfo.getNnw10():0.0;
|
|
|
+ temp2=null !=winfo.getNnw7()?winfo.getNnw7():0.0;
|
|
|
+ temp3=null !=winfo.getNnw8()?winfo.getNnw8():0.0;
|
|
|
+
|
|
|
+ vo.setName("NNW" + temp1 + "/" + temp2 + ")");
|
|
|
+ vo.setData1(temp3);
|
|
|
+
|
|
|
+ break;
|
|
|
+
|
|
|
+
|
|
|
+ default:
|
|
|
+ break;
|
|
|
+ }
|
|
|
+
|
|
|
+ vos.add(vo);
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ map.put("jfpl", jfplmonth);
|
|
|
+ map.put("data", vos);
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|