123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326 |
- package com.gyee.backconfig.service;
- import com.gyee.backconfig.model.auto.*;
- import com.gyee.backconfig.service.auto.*;
- import org.slf4j.Logger;
- import org.slf4j.LoggerFactory;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Service;
- import javax.annotation.Resource;
- import java.util.ArrayList;
- import java.util.List;
- /**
- * 生成测点服务类
- */
- @Service
- public class PointGenerateService {
- private static Logger logger = LoggerFactory.getLogger(PointGenerateService.class);
- @Resource
- private ICompanysService companysService;//公司
- @Autowired
- private IRegionService regionService;//区域
- @Resource
- private IProjectService projectService;//期次
- @Resource
- private ILineService lineService;//线路
- @Resource
- private IWindpowerstationService windpowerstationService;//场站
- @Autowired
- private IWindturbineService windturbineService;//风机
- @Autowired
- private IWindpowerstationpointnewService windpowerstationpointnewService;
- @Autowired
- private IWindturbinetestingpointnewService windturbinetestingpointnewService;
- @Autowired
- private IStandardpointService standardpointService;
- public int addGeneratePoint(String[] points) {
- int num = 0;
- List<Standardpoint> pointList = standardpointService.list(points);
- List<Companys> companysList = companysService.getCompanysByidAndRid("");
- for (Standardpoint p : pointList) {
- if ("czjs".equals(p.getType())) {
- List<Windpowerstationpointnew> staionList = fjd(p, companysList);
- for (Windpowerstationpointnew i : staionList) {
- boolean b = windpowerstationpointnewService.addOrUpdate(i);
- if (!b){
- logger.error( i.getCode()+"测点插入失败");
- num++;
- }
- }
- } else {
- //fjjs
- //fjjcd
- for (Companys c : companysList) {
- List<Region> regionList = regionService.getReginBycode(c.getCapacityunit());
- for (Region r : regionList) {
- List<Windpowerstation> windpowerstationList = windpowerstationService.getList(r.getCompanyid());
- List<Windturbinetestingpointnew> testingList = czd(p, windpowerstationList);
- for (Windturbinetestingpointnew i : testingList) {
- boolean b = windturbinetestingpointnewService.addOrUpdate(i);
- if (!b){
- logger.error( i.getCode()+"测点插入失败");
- num++;
- }
- }
- }
- }
- }
- }
- return num;
- }
- private List<Windpowerstationpointnew> fjd(Standardpoint p, List<Companys> companysList) {
- List<Windpowerstationpointnew> stationList = new ArrayList<>();
- Windpowerstationpointnew stationpoint = null;
- List<String> gflist = new ArrayList<>();
- gflist.add("G");
- gflist.add("F");
- for (Companys c : companysList) {
- StringBuilder gssb = null;
- List<Windpowerstationpointnew> list1 = windpowerstationpointnewService.getStationpointByUniformcode(c.getId(), p.getUniformcode());
- if (null == list1 || list1.size() <= 0) {
- //"JSFW.QY_JN_XXXX_XX_XX_XX_XXX_CI0144" "区域限电停机台数(明细)"
- gssb = new StringBuilder();
- gssb.append("JSFW.").append(c.getId()).append("_JN_");
- stationpoint = new Windpowerstationpointnew();
- stationpoint.setCode(gssb.toString() + "XXXX_XX_XX_XX_XXX_" + p.getUniformcode());
- stationpoint.setName(c.getName() + p.getName());
- stationpoint.setUniformcode(p.getUniformcode());
- stationpoint.setWindpowerstationid(c.getId());
- stationpoint.setRealtimeid("JSFW");
- stationList.add(stationpoint);
- }
- for (String gf: gflist){
- List<Windpowerstationpointnew> list1df = windpowerstationpointnewService.getStationpointByUniformcode(c.getId()+"_"+gf, p.getUniformcode());
- if (null == list1df || list1df.size() <= 0) {
- //"JSFW.QY_JN_QYG_XX_XX_XX_XXX_CI0144" "区域光伏限电停机台数(明细)"
- //"JSFW.QY_JN_QYF_XX_XX_XX_XXX_CI0144" "区域风场限电停机台数(明细)"
- StringBuilder gsgfsb = new StringBuilder(gssb);
- gsgfsb.append(c.getId()).append(gf)
- .append("_XX_XX_XX_XXX_")
- .append(p.getUniformcode());
- stationpoint = new Windpowerstationpointnew();
- stationpoint.setCode(gsgfsb.toString());
- stationpoint.setName(c.getName() + p.getName());
- stationpoint.setUniformcode(p.getUniformcode());
- stationpoint.setWindpowerstationid(c.getId()+"_"+gf);
- stationpoint.setRealtimeid("JSFW");
- stationList.add(stationpoint);
- }
- }
- List<Region> regionList = regionService.getReginBycode(c.getCapacityunit());
- for (Region r : regionList) {
- StringBuilder qusb = new StringBuilder();
- List<Windpowerstationpointnew> list2 = windpowerstationpointnewService.getStationpointByUniformcode( r.getId(), p.getUniformcode());
- if (null == list2 || list2.size() <= 0) {
- //"JSFW.SX_JN_XXXX_XX_XX_XX_XXX_CI0144" "山西限电停机台数(明细)"
- qusb.append("JSFW.").append(r.getId()).append("_JN_");
- stationpoint = new Windpowerstationpointnew();
- stationpoint.setCode(gssb.toString() + "XXXX_XX_XX_XX_XXX_" + p.getUniformcode());
- stationpoint.setName(c.getName() + p.getName());
- stationpoint.setUniformcode(p.getUniformcode());
- stationpoint.setWindpowerstationid(r.getId());
- stationpoint.setRealtimeid("JSFW");
- stationList.add(stationpoint);
- }
- for (String gf: gflist) {
- List<Windpowerstationpointnew> list2df = windpowerstationpointnewService.getStationpointByUniformcode(r.getId() + "_" + gf, p.getUniformcode());
- if (null == list2df || list2df.size() <= 0) {
- //"JSFW.SX_JN_SXG_XX_XX_XX_XXX_CI0144" "山西光伏限电停机台数(明细)"
- //"JSFW.SX_JN_SXF_XX_XX_XX_XXX_CI0144" "山西风场限电停机台数(明细)"
- StringBuilder qugfsb = new StringBuilder(qusb);
- qugfsb.append(r.getId()).append(gf)
- .append("_XX_XX_XX_XXX_")
- .append(p.getUniformcode());
- stationpoint = new Windpowerstationpointnew();
- stationpoint.setCode(qugfsb.toString());
- stationpoint.setName(c.getName() + p.getName());
- stationpoint.setUniformcode(p.getUniformcode());
- stationpoint.setWindpowerstationid(r.getId() + "_" + gf);
- stationpoint.setRealtimeid("JSFW");
- stationList.add(stationpoint);
- }
- }
- List<Windpowerstation> windpowerstationList = windpowerstationService.getList(r.getCompanyid());
- for (Windpowerstation station : windpowerstationList) {
- List<Windpowerstationpointnew> list3 = windpowerstationpointnewService.getStationpointByUniformcode(station.getId(), p.getUniformcode());
- if (null != list3 && list3.size() > 0) {
- continue;
- }
- stationpoint = new Windpowerstationpointnew();
- //BHBFCJSFW.SX_JN_BHBF_JS_XX_XX_XXX_CI0079
- //SYGCJSFW.SX_JN_SYG_JS_XX_XX_XXX_CI0001
- StringBuilder stationsb = new StringBuilder();
- String substaion = station.getId().substring(0, station.getId().indexOf("_"));
- stationsb.append(substaion).append(station.getId().endsWith("_FDC") ? "FCJSFW." : "GCJSFW.");
- stationsb.append("SX_JN_").append(substaion);
- stationsb.append(station.getId().endsWith("_FDC") ? "F" : "G").append("_JS_");
- stationpoint.setCode(stationsb.toString() + "XX_XX_XXX_" + p.getUniformcode());
- stationpoint.setName(station.getName() + p.getName());
- stationpoint.setUniformcode(p.getUniformcode());
- stationpoint.setWindpowerstationid(station.getId());
- stationpoint.setRealtimeid(substaion + (station.getId().endsWith("_FDC") ? "FCJSFW" : "GCJSFW"));
- stationList.add(stationpoint);
- List<Project> projectList = projectService.getList(station.getId());
- for (Project project : projectList) {
- List<Windpowerstationpointnew> list4 = windpowerstationpointnewService.getStationpointByUniformcode(project.getId(), p.getUniformcode());
- if (null != list4 && list4.size() > 0) {
- continue;
- }
- stationpoint = new Windpowerstationpointnew();
- //BHBFCJSFW.SX_JN_BHBF_JS_P1_XX_XXX_CI0079
- //SYGCJSFW.SX_JN_SYG_JS_P1_XX_XXX_CI0001
- StringBuilder projectsb = new StringBuilder(stationsb);
- Integer pnum = Integer.valueOf(project.getId().substring(substaion.length(), project.getId().indexOf("_"))) * 1;
- projectsb.append("P")
- .append(pnum);
- stationpoint.setCode(projectsb.toString()+"_XX_XXX_"+p.getUniformcode());
- stationpoint.setName(project.getName() + p.getName());
- stationpoint.setUniformcode(p.getUniformcode());
- stationpoint.setWindpowerstationid(project.getId());
- stationpoint.setRealtimeid(substaion + (station.getId().endsWith("_FDC") ? "FCJSFW" : "GCJSFW"));
- stationList.add(stationpoint);
- List<Line> lineList = lineService.getList(project.getId());
- for (Line l : lineList) {
- List<Windpowerstationpointnew> list5 = windpowerstationpointnewService.getStationpointByUniformcode(l.getId(), p.getUniformcode());
- if (null != list5 && list5.size() > 0) {
- continue;
- }
- stationpoint = new Windpowerstationpointnew();
- //BHBFCJSFW.SX_JN_BHBF_JS_P1_L3_XXX_CI0079
- //SYGCJSFW.SX_JN_SYG_JS_P1_L1_XXX_CI0001
- StringBuilder linesb = new StringBuilder(projectsb);
- Integer lnum = Integer.valueOf(l.getId().substring(substaion.length(), project.getId().indexOf("_"))) * 1;
- linesb.append("_L").append(lnum)
- .append("_XXX_").append(p.getUniformcode());
- stationpoint.setCode(linesb.toString());
- stationpoint.setName(l.getName() + p.getName());
- stationpoint.setUniformcode(p.getUniformcode());
- stationpoint.setWindpowerstationid(l.getId());
- stationpoint.setRealtimeid(substaion + (station.getId().endsWith("_FDC") ? "FCJSFW" : "GCJSFW"));
- stationList.add(stationpoint);
- }
- }
- }
- }
- }
- return stationList;
- }
- /**
- * @param p
- * @param windpowerstationList
- * @return
- */
- private List<Windturbinetestingpointnew> czd(Standardpoint p, List<Windpowerstation> windpowerstationList) {
- Windturbinetestingpointnew testing = null;
- List<Windturbinetestingpointnew> testingList = new ArrayList<>();
- for (Windpowerstation station : windpowerstationList) {
- List<Windturbine> windturbineList = windturbineService.getWindturbineGyLine(station.getId(), "", "");
- for (Windturbine w : windturbineList) {
- List<Windturbinetestingpointnew> list = windturbinetestingpointnewService.list(w.getId(), p.getUniformcode());
- if (null != list && list.size() > 0) {
- continue;
- }
- testing = new Windturbinetestingpointnew();
- //fjjs
- //fjjcd
- String substaion = station.getId().substring(0, station.getId().indexOf("_"));
- if ("fjjs".equals(p.getType())) {
- StringBuilder stationsb = new StringBuilder();
- stationsb.append(substaion).append(station.getId().endsWith("_FDC") ? "FJJSFW." : "GFJSFW.");
- stationsb.append("SX_JN_").append(substaion);
- stationsb.append(station.getId().endsWith("_FDC") ? "F" : "G").append("_JS_");
- Integer pnum = Integer.valueOf(w.getProjectid().substring(substaion.length(), w.getProjectid().indexOf("_"))) * 1;
- stationsb.append("P").append(pnum);
- Integer lnum = Integer.valueOf(w.getLineid().substring(substaion.length(), w.getLineid().indexOf("_"))) * 1;
- stationsb.append("_L").append(lnum);
- String wnum = w.getId().substring(w.getId().indexOf("_") + 1, w.getId().length());
- stationsb.append("_").append(wnum).append("_");
- //BHB3FJJSFW.SX_JN_BHB3F_JS_P1_L30_001_CI0060
- //SYGFJSFW.SX_JN_SYG_JS_P2_L3_NBQ0061_CI0174
- testing.setCode(stationsb.toString() + p.getUniformcode());
- testing.setRealtimeid(substaion + (station.getId().endsWith("_FDC") ? "FJJSFW" : "GFJSFW"));
- } else if ("fjjcd".equals(p.getType())) {
- testing.setCode("INITIAL");
- testing.setRealtimeid(substaion + (station.getId().endsWith("_FDC") ? "FJ" : "GF"));
- }
- testing.setName(w.getName() + p.getName());
- testing.setUniformcode(p.getUniformcode());
- testing.setWindpowerstationid(w.getId());
- testingList.add(testing);
- }
- }
- return testingList;
- }
- }
|