src/main/java/com/whyc/controller/StationInfController.java
@@ -1,13 +1,13 @@ package com.whyc.controller; import com.whyc.dto.Response; import com.whyc.pojo.db_batt.StationInf; import com.whyc.service.StationInfService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.*; @RestController @Api(tags = "机房管理") @@ -22,4 +22,11 @@ Response res=service.getAllSinf(); return res; } @ApiModelProperty("新增") @PostMapping("add") public Response add(@RequestBody StationInf stationInf){ service.add(stationInf); return new Response().setII(1,"新增完成"); } } src/main/java/com/whyc/controller/StationPowerRelationController.java
New file @@ -0,0 +1,27 @@ package com.whyc.controller; import com.whyc.dto.Response; import com.whyc.pojo.db_batt.StationPowerRelation; import com.whyc.service.StationPowerRelationService; import io.swagger.annotations.Api; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController @Api(tags = "机房电源关系") @RequestMapping("stationPowerRelation") public class StationPowerRelationController { @Autowired private StationPowerRelationService service; @PostMapping("add") public Response add(@RequestBody StationPowerRelation relation){ service.add(relation.getStationId(),relation.getPowerId()); return new Response().setII(1,"新增完成"); } } src/main/java/com/whyc/mapper/PowerInfMapper.java
@@ -5,4 +5,6 @@ public interface PowerInfMapper extends CustomMapper<PowerInf>{ Integer selectMaxBattGroupId(); int getMaxPowerId(); } src/main/java/com/whyc/mapper/StationInfMapper.java
@@ -8,4 +8,7 @@ //查询左侧机房信息列表 List<StationInf> getAllSinf(); int getMaxStationId(); } src/main/java/com/whyc/mapper/StationPowerRelationMapper.java
New file @@ -0,0 +1,8 @@ package com.whyc.mapper; import com.whyc.pojo.db_batt.StationPowerRelation; public interface StationPowerRelationMapper extends CustomMapper<StationPowerRelation> { int getMaxNum(); } src/main/java/com/whyc/pojo/db_batt/PowerInf.java
@@ -93,6 +93,8 @@ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date updateTime; @TableField(exist = false) private String stationName; } src/main/java/com/whyc/pojo/db_batt/StationPowerRelation.java
@@ -1,6 +1,8 @@ package com.whyc.pojo.db_batt; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; import lombok.ToString; /** @@ -8,8 +10,16 @@ */ @TableName(schema = "db_batt",value = "sinf_pinf") @ToString @Data public class StationPowerRelation { private Integer num; @TableField("sinf_id") private Integer stationId; @TableField("pinf_id") private Integer powerId; } src/main/java/com/whyc/service/PowerInfService.java
@@ -7,10 +7,13 @@ import com.whyc.dto.Response; import com.whyc.mapper.*; import com.whyc.pojo.db_batt.PowerInf; import com.whyc.pojo.db_batt.StationInf; import com.whyc.pojo.db_batt.StationPowerRelation; import com.whyc.pojo.db_power_alarm.PowerAlarm; import com.whyc.pojo.db_real_batt.RtData; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.Date; import java.util.HashMap; @@ -36,6 +39,12 @@ @Autowired(required = false) private PowerAlarmMapper pAlarmMapper; @Autowired private StationPowerRelationService stationPowerRelationService; @Autowired private StationInfService stationInfService; //根据id获取电源信息 public Map<String,Object> getInfById(int powerId) { @@ -83,6 +92,7 @@ return list; } @Transactional public Response add(PowerInf powerInf) { powerInf.setCreateTime(new Date()); //对powerInf的 devType进行判断 @@ -98,6 +108,21 @@ if(powerInf.getChannelCount() == null){ powerInf.setChannelCount(1); } //电源id查询最大值 int powerId = mapper.getMaxPowerId(); powerInf.setPowerId(powerId); //对站点名称进行查询,如果存在则直接绑定关系 //如果不存在,则新增后,再绑定关系 StationInf stationInf = stationInfService.getByStationName(powerInf.getStationName()); if(stationInf == null){ StationInf stationNew = new StationInf(); stationNew.setSinfName(powerInf.getStationName()); int stationId = stationInfService.getMaxStationId(); stationNew.setSinfId(stationId+1); stationInfService.add(stationNew); //站点和电源id关联 stationPowerRelationService.add(stationId,powerId); } mapper.insert(powerInf); return new Response().setII(1,"新增完成"); } src/main/java/com/whyc/service/StationInfService.java
@@ -1,5 +1,7 @@ package com.whyc.service; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.whyc.dto.Response; import com.whyc.mapper.StationInfMapper; import com.whyc.pojo.db_batt.StationInf; @@ -19,4 +21,21 @@ List<StationInf> list=mapper.getAllSinf(); return new Response().setII(1,list!=null,list,"查询左侧机房信息列表"); } public StationInf getByStationName(String stationName) { QueryWrapper<StationInf> query = Wrappers.query(); query.eq("sinf_name",stationName); return mapper.selectOne(query); } public StationInf add(StationInf stationNew) { int stationId = mapper.getMaxStationId(); stationNew.setSinfId(stationId+1); mapper.insert(stationNew); return stationNew; } public int getMaxStationId() { return mapper.getMaxStationId(); } } src/main/java/com/whyc/service/StationPowerRelationService.java
New file @@ -0,0 +1,24 @@ package com.whyc.service; import com.whyc.mapper.StationPowerRelationMapper; import com.whyc.pojo.db_batt.StationPowerRelation; import org.springframework.stereotype.Service; import javax.annotation.Resource; @Service public class StationPowerRelationService { @Resource private StationPowerRelationMapper mapper; public void add(int stationId, int powerId) { StationPowerRelation relation = new StationPowerRelation(); relation.setStationId(stationId); relation.setPowerId(powerId); //获取最大num int num = mapper.getMaxNum(); relation.setNum(num+1); mapper.insert(relation); } } src/main/resources/mapper/PowerInfMapper.xml
@@ -5,4 +5,7 @@ <select id="selectMaxBattGroupId" resultType="java.lang.Integer"> select max(binf_id) from power_inf </select> <select id="getMaxPowerId" resultType="java.lang.Integer"> select max(power_id) from power_inf </select> </mapper> src/main/resources/mapper/StationInfMapper.xml
@@ -20,5 +20,8 @@ </where> order by power_inf.power_id asc </select> <select id="getMaxStationId" resultType="java.lang.Integer"> select max(sinf_id) from db_batt.station_inf </select> </mapper> src/main/resources/mapper/StationPowerRelationMapper.xml
New file @@ -0,0 +1,9 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.whyc.mapper.StationPowerRelationMapper" > <select id="getMaxNum" resultType="java.lang.Integer"> select max(num) from db_batt.sinf_pinf </select> </mapper>